# yaml-language-server: $schema=https://schema.zeabur.app/template.json
apiVersion: zeabur.com/v1
kind: Template
metadata:
    name: qwq Notify Hub
spec:
    description: Unified notification dispatch platform — one API to send via SMS, email, WeChat, Feishu, DingTalk, WeCom and Webhook, with templates, failover and an IAM management API.
    variables:
        - key: PUBLIC_DOMAIN
          type: DOMAIN
          name: Domain
          description: Public domain for the platform (used for SSO callback and absolute links).
    tags:
        - Notification
        - Tool
        - API
        - Next.js
    readme: |-
        # qwq Notify Hub

        A self-hosted **unified notification dispatch platform**. Your systems call one
        API with a key and send through SMS / email / WeChat Official Account / Feishu /
        DingTalk / WeCom / Webhook.

        **Highlights**
        - Multi-provider per channel, group round-robin / least-used, automatic **failover**
        - **Templates** with auto-extracted variables; send by template code
        - **Test / production API keys**, IP allowlist, rate limiting, per-method scopes
        - **Compatible endpoints** — point Server酱 / PushPlus / Bark at it, no code changes
        - **IAM management API** — external platforms create / update / disable / enable
          sub-accounts via `/api/v1/iam`, with optional qwq-sso pre-binding
        - Password login + **qwq-sso** SSO (bind-first; the platform stays the account authority)
        - Call logs + audit log, exportable to Excel · bilingual (中 / EN) UI

        After deploy, open the site — the first visit guides you to create the admin
        (Owner) account. Data is stored in SQLite on a persistent volume at `/data`.
        Full integration docs: see `API.md` in the repository.
    services:
        - name: qwq-notify-hub
          template: GIT
          spec:
            id: qwq-notify-hub
            source:
                source: GITHUB
                repo: 1305044949
                branch: master
                rootDirectory: /
            ports:
                - id: web
                  port: 8080
                  type: HTTP
            volumes:
                - id: data
                  dir: /data
            env:
                APP_URL:
                    default: https://${PUBLIC_DOMAIN}
                AUTH_SECRET:
                    default: ${PASSWORD}
                DATABASE_URL:
                    default: file:/data/qwq.db
          domainKey: PUBLIC_DOMAIN
