# yaml-language-server: $schema=https://schema.zeabur.app/template.json
apiVersion: zeabur.com/v1
kind: Template
metadata:
    name: Verdaccio
spec:
    description: |
        Verdaccio is a lightweight private npm proxy registry. Publish and cache npm packages locally with zero configuration, proxy upstream registries, and manage access with built-in authentication — all with no external database required.
    coverImage: https://cdn.verdaccio.dev/readme/readme-website.png
    icon: https://cdn.verdaccio.dev/readme/verdaccio@2x.png
    variables:
        - key: PUBLIC_DOMAIN
          type: DOMAIN
          name: Domain
          description: The domain to access Verdaccio
    tags:
        - Tool
        - Development
    readme: |
        # Verdaccio

        A lightweight private npm proxy registry. Publish packages privately, cache downloads from npmjs.org, and manage team access — no external database needed.

        ## What You Can Do After Deployment

        1. **Visit your domain** — Verdaccio provides a web UI to browse and search published packages
        2. **Set your registry** — run `npm set registry https://your-domain.zeabur.app` to point npm at your instance
        3. **Publish private packages** — use `npm publish` to store packages in your own registry
        4. **Proxy upstream packages** — packages not found locally are fetched and cached from npmjs.org
        5. **Create user accounts** — run `npm adduser --registry https://your-domain.zeabur.app` to register

        ## Key Features

        - Web UI for browsing and searching packages
        - Private package publishing with scoped package support
        - Upstream proxy with automatic caching
        - Built-in user authentication (htpasswd)
        - Fine-grained access control per package
        - Plugin ecosystem for storage, auth, and middleware
        - Compatible with npm, yarn, and pnpm
        - Docker-ready with persistent storage

        ## License

        MIT — [GitHub](https://github.com/verdaccio/verdaccio)
    services:
        - name: verdaccio
          icon: https://cdn.verdaccio.dev/readme/verdaccio@2x.png
          template: PREBUILT_V2
          spec:
            source:
                image: verdaccio/verdaccio:6.3.2
            ports:
                - id: web
                  port: 4873
                  type: HTTP
            volumes:
                - id: storage
                  dir: /verdaccio/storage
            env:
                VERDACCIO_PORT:
                    default: "4873"
                VERDACCIO_PROTOCOL:
                    default: http
            healthCheck:
                type: HTTP
                port: web
                http:
                    path: /-/verdaccio/data/packages
          domainKey: PUBLIC_DOMAIN
localization:
    es-ES:
        description: |
            Verdaccio es un registro proxy npm privado y ligero. Publica y cachea paquetes npm localmente sin configuración, actúa como proxy de registros upstream y gestiona el acceso con autenticación integrada, sin base de datos externa.
        variables:
            - key: PUBLIC_DOMAIN
              type: STRING
              name: Dominio
              description: El dominio para acceder a Verdaccio
        readme: |
            # Verdaccio

            Registro proxy npm privado y ligero. Publica paquetes de forma privada, cachea descargas de npmjs.org y gestiona el acceso del equipo, sin base de datos externa.

            ## Que puedes hacer tras el despliegue

            1. **Visita tu dominio** — Verdaccio ofrece una interfaz web para explorar y buscar paquetes
            2. **Configura el registry** — ejecuta `npm set registry https://your-domain.zeabur.app`
            3. **Publica paquetes privados** — usa `npm publish` para almacenar paquetes en tu propio registry
            4. **Proxy de paquetes upstream** — los paquetes no encontrados localmente se obtienen y cachean de npmjs.org
            5. **Crea cuentas de usuario** — ejecuta `npm adduser --registry https://your-domain.zeabur.app`

            ## Licencia

            MIT — [GitHub](https://github.com/verdaccio/verdaccio)
    id-ID:
        description: |
            Verdaccio adalah registry proxy npm privat yang ringan. Publikasi dan cache paket npm secara lokal tanpa konfigurasi, proxy registry upstream, dan kelola akses dengan autentikasi bawaan — tanpa database eksternal.
        variables:
            - key: PUBLIC_DOMAIN
              type: STRING
              name: Domain
              description: Domain untuk mengakses Verdaccio
        readme: |
            # Verdaccio

            Registry proxy npm privat yang ringan. Publikasi paket secara privat, cache unduhan dari npmjs.org, dan kelola akses tim tanpa database eksternal.

            ## Apa yang bisa dilakukan setelah deploy

            1. **Buka domain** — Verdaccio menyediakan UI web untuk menjelajah dan mencari paket
            2. **Atur registry** — jalankan `npm set registry https://your-domain.zeabur.app`
            3. **Publikasi paket privat** — gunakan `npm publish` untuk menyimpan paket di registry sendiri
            4. **Proxy paket upstream** — paket yang tidak ditemukan secara lokal diambil dan di-cache dari npmjs.org
            5. **Buat akun pengguna** — jalankan `npm adduser --registry https://your-domain.zeabur.app`

            ## Lisensi

            MIT — [GitHub](https://github.com/verdaccio/verdaccio)
    ja-JP:
        description: |
            Verdaccio は軽量なプライベート npm プロキシレジストリです。設定不要でローカルに npm パッケージを公開・キャッシュし、上流レジストリをプロキシし、組み込み認証でアクセスを管理できます。外部データベースは不要です。
        variables:
            - key: PUBLIC_DOMAIN
              type: STRING
              name: ドメイン
              description: Verdaccio にアクセスするためのドメイン
        readme: |
            # Verdaccio

            軽量なプライベート npm プロキシレジストリ。パッケージのプライベート公開、npmjs.org からのダウンロードキャッシュ、チームアクセス管理が可能。外部データベース不要。

            ## デプロイ後にできること

            1. **ドメインにアクセス** — Web UI でパッケージの閲覧・検索ができます
            2. **レジストリを設定** — `npm set registry https://your-domain.zeabur.app` を実行
            3. **プライベートパッケージを公開** — `npm publish` で自分のレジストリに保存
            4. **上流パッケージをプロキシ** — ローカルにないパッケージは npmjs.org から取得しキャッシュ
            5. **ユーザーアカウントを作成** — `npm adduser --registry https://your-domain.zeabur.app` で登録

            ## ライセンス

            MIT — [GitHub](https://github.com/verdaccio/verdaccio)
    ko-KR:
        description: |
            Verdaccio는 경량 프라이빗 npm 프록시 레지스트리입니다. 설정 없이 로컬에서 npm 패키지를 게시 및 캐시하고, 업스트림 레지스트리를 프록시하며, 내장 인증으로 접근을 관리합니다. 외부 데이터베이스가 필요 없습니다.
        variables:
            - key: PUBLIC_DOMAIN
              type: STRING
              name: 도메인
              description: Verdaccio에 접속할 도메인
        readme: |
            # Verdaccio

            경량 프라이빗 npm 프록시 레지스트리. 패키지 프라이빗 게시, npmjs.org 다운로드 캐시, 팀 접근 관리가 가능하며 외부 데이터베이스가 필요 없습니다.

            ## 배포 후 할 수 있는 것

            1. **도메인 접속** — Web UI에서 패키지 검색 및 탐색 가능
            2. **레지스트리 설정** — `npm set registry https://your-domain.zeabur.app` 실행
            3. **프라이빗 패키지 게시** — `npm publish`로 자체 레지스트리에 저장
            4. **업스트림 패키지 프록시** — 로컬에 없는 패키지는 npmjs.org에서 가져와 캐시
            5. **사용자 계정 생성** — `npm adduser --registry https://your-domain.zeabur.app`로 등록

            ## 라이선스

            MIT — [GitHub](https://github.com/verdaccio/verdaccio)
    th-TH:
        description: |
            Verdaccio เป็น registry proxy npm แบบส่วนตัวที่เบา เผยแพร่และแคชแพ็กเกจ npm ในเครื่องโดยไม่ต้องตั้งค่า พร็อกซีรีจิสทรีต้นทาง และจัดการสิทธิ์ด้วยการยืนยันตัวตนในตัว ไม่ต้องใช้ฐานข้อมูลภายนอก
        variables:
            - key: PUBLIC_DOMAIN
              type: STRING
              name: โดเมน
              description: โดเมนสำหรับเข้าถึง Verdaccio
        readme: |
            # Verdaccio

            Registry proxy npm แบบส่วนตัวที่เบา เผยแพร่แพ็กเกจแบบส่วนตัว แคชดาวน์โหลดจาก npmjs.org และจัดการสิทธิ์ทีมได้โดยไม่ต้องใช้ฐานข้อมูลภายนอก

            ## สิ่งที่ทำได้หลังจากติดตั้ง

            1. **เข้าสู่โดเมน** — Verdaccio มี Web UI สำหรับเรียกดูและค้นหาแพ็กเกจ
            2. **ตั้งค่า registry** — รัน `npm set registry https://your-domain.zeabur.app`
            3. **เผยแพร่แพ็กเกจส่วนตัว** — ใช้ `npm publish` เก็บแพ็กเกจในรีจิสทรีของคุณ
            4. **พร็อกซีแพ็กเกจต้นทาง** — แพ็กเกจที่ไม่พบในเครื่องจะดึงจาก npmjs.org และแคชไว้
            5. **สร้างบัญชีผู้ใช้** — รัน `npm adduser --registry https://your-domain.zeabur.app`

            ## สัญญาอนุญาต

            MIT — [GitHub](https://github.com/verdaccio/verdaccio)
    zh-CN:
        description: |
            Verdaccio 是轻量级的私有 npm 代理 registry。零配置即可在本地发布与缓存 npm 包、代理上游 registry，并通过内置认证管理访问权限，无需外部数据库。
        variables:
            - key: PUBLIC_DOMAIN
              type: STRING
              name: 域名
              description: 访问 Verdaccio 的域名
        readme: |
            # Verdaccio

            轻量级的私有 npm 代理 registry。私有发布包、缓存 npmjs.org 的下载内容、管理团队访问权限，无需外部数据库。

            ## 部署后可以做什么

            1. **打开域名** — Verdaccio 提供网页界面浏览及搜索已发布的包
            2. **设置 registry** — 执行 `npm set registry https://your-domain.zeabur.app` 将 npm 指向您的实例
            3. **发布私有包** — 使用 `npm publish` 将包存储在自己的 registry
            4. **代理上游包** — 本地找不到的包会自动从 npmjs.org 获取并缓存
            5. **创建用户账号** — 执行 `npm adduser --registry https://your-domain.zeabur.app` 进行注册

            ## 授权

            MIT — [GitHub](https://github.com/verdaccio/verdaccio)
    zh-TW:
        description: |
            Verdaccio 是輕量級的私有 npm 代理 registry。零配置即可在本地發佈與快取 npm 套件、代理上游 registry，並透過內建驗證管理存取權限，無需外部資料庫。
        variables:
            - key: PUBLIC_DOMAIN
              type: STRING
              name: 網域
              description: 存取 Verdaccio 的網域
        readme: |
            # Verdaccio

            輕量級的私有 npm 代理 registry。私有發佈套件、快取 npmjs.org 的下載內容、管理團隊存取權限，無需外部資料庫。

            ## 部署後可以做什麼

            1. **開啟網域** — Verdaccio 提供網頁介面瀏覽及搜尋已發佈的套件
            2. **設定 registry** — 執行 `npm set registry https://your-domain.zeabur.app` 將 npm 指向您的實例
            3. **發佈私有套件** — 使用 `npm publish` 將套件儲存在自己的 registry
            4. **代理上游套件** — 本地找不到的套件會自動從 npmjs.org 取得並快取
            5. **建立使用者帳號** — 執行 `npm adduser --registry https://your-domain.zeabur.app` 進行註冊

            ## 授權

            MIT — [GitHub](https://github.com/verdaccio/verdaccio)
