# yaml-language-server: $schema=https://schema.zeabur.app/template.json
apiVersion: zeabur.com/v1
kind: Template
metadata:
    name: Easy-Gate
spec:
    description: |
        Easy-Gate is a simple, self-hosted dashboard and startpage for your infrastructure. Display your services and notes from a configuration file, with real-time updates, user group access control based on IP addresses, and category organization. Built with Go as a single binary with no external dependencies.
    coverImage: https://raw.githubusercontent.com/wiredlush/easy-gate/master/assets/demo.png
    icon: https://raw.githubusercontent.com/wiredlush/easy-gate/master/assets/logo.svg
    variables:
        - key: PUBLIC_DOMAIN
          type: DOMAIN
          name: Domain
          description: The domain to access Easy-Gate
    tags:
        - Tool
        - Dashboard
    readme: |
        # Easy-Gate

        Easy-Gate is a lightweight, self-hosted startpage and dashboard for your infrastructure. It reads services and notes from a configuration file and displays them in a clean, organized interface.

        ## Features

        - **Service Directory** — list and categorize all your self-hosted services
        - **Notes Section** — add quick reference notes alongside your services
        - **Real-Time Updates** — configuration changes are reflected without restart
        - **User Groups** — control access to services based on IP addresses
        - **Categories** — organize services into logical groups
        - **Single Binary** — no external database or dependencies required

        ## First-Time Setup

        Easy-Gate reads its configuration from a JSON or YAML file. You can pass the entire configuration via the `EASY_GATE_CONFIG` environment variable, or mount a config file at a custom path via `EASY_GATE_CONFIG_PATH`.

        By default, a minimal configuration is included. To customize, update the `EASY_GATE_CONFIG` environment variable in Zeabur's **Service > Variables** section with your JSON configuration.

        ## Configuration Example

        ```json
        {
          "title": "My Homelab",
          "services": [
            {
              "name": "Grafana",
              "url": "https://grafana.example.com",
              "category": "Monitoring",
              "icon": "grafana"
            }
          ],
          "notes": [
            {
              "title": "VPN Access",
              "content": "Connect to VPN before accessing internal services"
            }
          ]
        }
        ```

        ## Persistent Data

        Easy-Gate is stateless and reads from its config. No persistent volume is needed.

        ## License

        MIT — [GitHub](https://github.com/wiredlush/easy-gate)
    services:
        - name: easy-gate
          icon: https://raw.githubusercontent.com/wiredlush/easy-gate/master/assets/logo.svg
          template: PREBUILT_V2
          spec:
            source:
                image: wiredlush/easy-gate:2.0.3
            ports:
                - id: web
                  port: 8080
                  type: HTTP
            healthCheck:
                type: HTTP
                port: web
                http:
                    path: /
          domainKey: PUBLIC_DOMAIN
localization:
    es-ES:
        description: |
            Easy-Gate es un panel de control y pagina de inicio autoalojado para tu infraestructura. Muestra tus servicios y notas desde un archivo de configuracion, con actualizaciones en tiempo real, control de acceso por grupos de usuarios basado en IP y organizacion por categorias. Construido con Go como un unico binario sin dependencias externas.
        variables:
            - key: PUBLIC_DOMAIN
              type: STRING
              name: Dominio
              description: El dominio para acceder a Easy-Gate
        readme: |
            # Easy-Gate

            Easy-Gate es una pagina de inicio y panel de control ligero y autoalojado. Lee servicios y notas desde un archivo de configuracion y los muestra en una interfaz limpia.

            ## Configuracion inicial

            Easy-Gate lee su configuracion desde un archivo JSON o YAML. Puedes pasar la configuracion completa via la variable de entorno `EASY_GATE_CONFIG`, o montar un archivo de configuracion via `EASY_GATE_CONFIG_PATH`.

            ## Que puedes hacer despues del despliegue

            1. Abre tu dominio para acceder al panel de Easy-Gate
            2. Actualiza la variable de entorno `EASY_GATE_CONFIG` en **Service > Variables** de Zeabur para personalizar
            3. Agrega tus enlaces de servicios y notas
            4. Organiza servicios por categorias

            ## Licencia

            MIT — [GitHub](https://github.com/wiredlush/easy-gate)
    id-ID:
        description: |
            Easy-Gate adalah dashboard dan halaman awal self-hosted yang sederhana untuk infrastruktur Anda. Tampilkan layanan dan catatan dari file konfigurasi, dengan pembaruan real-time, kontrol akses grup pengguna berbasis IP, dan organisasi kategori. Dibangun dengan Go sebagai binary tunggal tanpa dependensi eksternal.
        variables:
            - key: PUBLIC_DOMAIN
              type: STRING
              name: Domain
              description: Domain untuk mengakses Easy-Gate
        readme: |
            # Easy-Gate

            Easy-Gate adalah halaman awal dan dashboard self-hosted yang ringan. Membaca layanan dan catatan dari file konfigurasi dan menampilkannya dalam antarmuka yang bersih.

            ## Pengaturan Awal

            Easy-Gate membaca konfigurasi dari file JSON atau YAML. Anda dapat mengirim seluruh konfigurasi melalui variabel lingkungan `EASY_GATE_CONFIG`, atau mount file konfigurasi melalui `EASY_GATE_CONFIG_PATH`.

            ## Yang Dapat Dilakukan Setelah Deploy

            1. Buka domain Anda untuk mengakses dashboard Easy-Gate
            2. Perbarui variabel lingkungan `EASY_GATE_CONFIG` di **Service > Variables** Zeabur untuk kustomisasi
            3. Tambahkan tautan layanan dan catatan Anda
            4. Organisasikan layanan berdasarkan kategori

            ## Lisensi

            MIT — [GitHub](https://github.com/wiredlush/easy-gate)
    ja-JP:
        description: |
            Easy-Gate はインフラストラクチャ管理用のシンプルなセルフホスト型ダッシュボードおよびスタートページです。設定ファイルからサービスとメモを表示し、リアルタイム更新、IP アドレスベースのユーザーグループアクセス制御、カテゴリ整理に対応しています。Go で単一バイナリとして構築され、外部依存関係は不要です。
        variables:
            - key: PUBLIC_DOMAIN
              type: STRING
              name: ドメイン
              description: Easy-Gate にアクセスするためのドメイン
        readme: |
            # Easy-Gate

            Easy-Gate は軽量なセルフホスト型スタートページおよびダッシュボードです。設定ファイルからサービスとメモを読み込み、クリーンな UI で表示します。

            ## 初回セットアップ

            Easy-Gate は JSON または YAML 設定ファイルから設定を読み込みます。`EASY_GATE_CONFIG` 環境変数で設定全体を渡すか、`EASY_GATE_CONFIG_PATH` で設定ファイルをマウントできます。

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

            1. ドメインを開いて Easy-Gate ダッシュボードにアクセス
            2. Zeabur の **Service > Variables** で `EASY_GATE_CONFIG` 環境変数を更新してカスタマイズ
            3. サービスリンクとメモを追加
            4. カテゴリでサービスを整理

            ## ライセンス

            MIT — [GitHub](https://github.com/wiredlush/easy-gate)
    ko-KR:
        description: |
            Easy-Gate는 인프라 관리를 위한 간단한 셀프 호스팅 대시보드 및 시작 페이지입니다. 구성 파일에서 서비스와 메모를 표시하며, 실시간 업데이트, IP 주소 기반 사용자 그룹 접근 제어, 카테고리 정리를 지원합니다. Go로 단일 바이너리로 구축되어 외부 의존성이 필요하지 않습니다.
        variables:
            - key: PUBLIC_DOMAIN
              type: STRING
              name: 도메인
              description: Easy-Gate에 접속할 도메인
        readme: |
            # Easy-Gate

            Easy-Gate는 경량 셀프 호스팅 시작 페이지 및 대시보드입니다. 구성 파일에서 서비스와 메모를 읽어 깔끔한 UI로 표시합니다.

            ## 초기 설정

            Easy-Gate는 JSON 또는 YAML 구성 파일에서 설정을 읽습니다. `EASY_GATE_CONFIG` 환경 변수로 전체 구성을 전달하거나 `EASY_GATE_CONFIG_PATH`로 구성 파일을 마운트할 수 있습니다.

            ## 배포 후 할 수 있는 것

            1. 도메인을 열어 Easy-Gate 대시보드에 접속
            2. Zeabur의 **Service > Variables**에서 `EASY_GATE_CONFIG` 환경 변수를 업데이트하여 커스터마이즈
            3. 서비스 링크와 메모 추가
            4. 카테고리로 서비스 정리

            ## 라이선스

            MIT — [GitHub](https://github.com/wiredlush/easy-gate)
    th-TH:
        description: |
            Easy-Gate เป็นแดชบอร์ดและหน้าเริ่มต้นแบบ self-hosted ที่เรียบง่ายสำหรับโครงสร้างพื้นฐานของคุณ แสดงบริการและบันทึกจากไฟล์การกำหนดค่า พร้อมการอัปเดตแบบเรียลไทม์ การควบคุมการเข้าถึงกลุ่มผู้ใช้ตาม IP และการจัดหมวดหมู่ สร้างด้วย Go เป็นไบนารีเดียวโดยไม่ต้องพึ่งพาภายนอก
        variables:
            - key: PUBLIC_DOMAIN
              type: STRING
              name: โดเมน
              description: โดเมนสำหรับเข้าถึง Easy-Gate
        readme: |
            # Easy-Gate

            Easy-Gate เป็นหน้าเริ่มต้นและแดชบอร์ดแบบ self-hosted ที่เบา อ่านบริการและบันทึกจากไฟล์การกำหนดค่าและแสดงใน UI ที่สะอาดตา

            ## การตั้งค่าครั้งแรก

            Easy-Gate อ่านการกำหนดค่าจากไฟล์ JSON หรือ YAML คุณสามารถส่งการกำหนดค่าทั้งหมดผ่านตัวแปรสภาพแวดล้อม `EASY_GATE_CONFIG` หรือ mount ไฟล์การกำหนดค่าผ่าน `EASY_GATE_CONFIG_PATH`

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

            1. เปิดโดเมนของคุณเพื่อเข้าถึงแดชบอร์ด Easy-Gate
            2. อัปเดตตัวแปรสภาพแวดล้อม `EASY_GATE_CONFIG` ใน **Service > Variables** ของ Zeabur เพื่อปรับแต่ง
            3. เพิ่มลิงก์บริการและบันทึกของคุณ
            4. จัดระเบียบบริการตามหมวดหมู่

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

            MIT — [GitHub](https://github.com/wiredlush/easy-gate)
    zh-CN:
        description: |
            Easy-Gate 是一款简单的自托管仪表盘和起始页，用于管理您的基础设施。从配置文件显示您的服务和笔记，支持实时更新、基于 IP 地址的用户组访问控制，以及分类组织。使用 Go 构建为单一可执行文件，无需外部依赖。
        variables:
            - key: PUBLIC_DOMAIN
              type: STRING
              name: 域名
              description: 访问 Easy-Gate 的域名
        readme: |
            # Easy-Gate

            Easy-Gate 是一款轻量级的自托管起始页和仪表盘。它从配置文件读取服务和笔记，并以简洁的界面显示。

            ## 首次设置

            Easy-Gate 从 JSON 或 YAML 配置文件读取设置。您可以通过 `EASY_GATE_CONFIG` 环境变量传入完整配置，或通过 `EASY_GATE_CONFIG_PATH` 挂载配置文件。

            ## 部署后可以做什么

            1. 打开您的域名进入 Easy-Gate 仪表盘
            2. 在 Zeabur 的 **Service > Variables** 中更新 `EASY_GATE_CONFIG` 环境变量来自定义配置
            3. 添加您的服务链接和笔记
            4. 使用分类组织服务

            ## 授权

            MIT — [GitHub](https://github.com/wiredlush/easy-gate)
    zh-TW:
        description: |
            Easy-Gate 是一款簡單的自架儀表板和起始頁，用於管理您的基礎設施。從設定檔顯示您的服務和筆記，支援即時更新、基於 IP 位址的使用者群組存取控制，以及分類組織。使用 Go 建構為單一執行檔，無需外部依賴。
        variables:
            - key: PUBLIC_DOMAIN
              type: STRING
              name: 網域
              description: 存取 Easy-Gate 的網域
        readme: |
            # Easy-Gate

            Easy-Gate 是一款輕量級的自架起始頁和儀表板。它從設定檔讀取服務和筆記，並以簡潔的介面顯示。

            ## 首次設定

            Easy-Gate 從 JSON 或 YAML 設定檔讀取設定。您可以透過 `EASY_GATE_CONFIG` 環境變數傳入完整設定，或透過 `EASY_GATE_CONFIG_PATH` 掛載設定檔。

            ## 部署後可以做什麼

            1. 開啟您的網域進入 Easy-Gate 儀表板
            2. 在 Zeabur 的 **Service > Variables** 中更新 `EASY_GATE_CONFIG` 環境變數來自訂設定
            3. 新增您的服務連結和筆記
            4. 使用分類組織服務

            ## 授權

            MIT — [GitHub](https://github.com/wiredlush/easy-gate)
