# yaml-language-server: $schema=https://schema.zeabur.app/template.json
apiVersion: zeabur.com/v1
kind: Template
metadata:
    name: Ech0
spec:
    description: A next-generation open-source, self-hosted, lightweight federated publishing platform focused on personal idea sharing.
    coverImage: https://github.com/lin-snow/Ech0/raw/main/docs/imgs/screenshot.png
    icon: https://raw.githubusercontent.com/lin-snow/Ech0/main/docs/imgs/logo.svg
    variables:
        - key: PUBLIC_DOMAIN
          type: DOMAIN
          name: Domain
          description: What is the domain you want for your Ech0?
    tags:
        - Blog
        - Website
    readme: "\n# Ech0\n\n> A next-generation open-source, self-hosted, lightweight federated publishing platform focused on personal idea sharing.\n\nEch0 is a new-generation open-source self-hosted platform designed for individual users. It is ultra-lightweight and low-cost, supporting the ActivityPub protocol to let you easily publish and share ideas, writings, and links. With a clean, intuitive interface and powerful command-line tools, content management becomes simple and flexible. Your data is fully owned and controlled by you, always connected to the world, building your own network of thoughts.\n\n---\n\n## Highlights\n\n* ☁️ **Atomically Lightweight**: Consumes less than **15MB** of memory with an image size under **50MB**, powered by a single-file SQLite architecture\n* \U0001F680 **Instant Deployment**: Zero configuration required — from installation to operation in just one command\n* ✍️ **Distraction-Free Writing**: A clean, online Markdown editor with rich plugin support and real-time preview\n* \U0001F4E6 **Data Sovereignty**: All content is stored locally in SQLite, with full RSS feed support\n* \U0001F510 **Secure Backup Mechanism**: One-click export and full data backup across Web, TUI, and CLI modes, with automatic background backup support\n* ♻️ **Seamless Recovery**: Supports TUI/CLI snapshot restoration and Web-based zero-downtime recovery, ensuring data safety with ease\n* \U0001F389 **Forever Free**: Open-sourced under the AGPL-3.0 license — no tracking, no subscriptions, no external dependencies\n* \U0001F30D **Cross-Platform Adaptation**: Fully responsive design optimized for desktop, tablet, and mobile browsers\n* \U0001F47E **PWA Ready**: Installable as a web application, offering a near-native experience\n* \U0001F3F7️ **Elegant Tag Management & Filtering**: Intelligent tagging system with fast filtering and precise search for effortless organization\n* ☁️ **S3 Storage Integration**: Native support for S3-compatible object storage enables efficient cloud synchronization\n* \U0001F310 **ActivityPub Federation**: Seamlessly federates with Mastodon, Misskey, and other decentralized platforms\n* \U0001F511 **OAuth2 & OIDC Authentication**: Native support for OAuth2 and OIDC protocols, enabling seamless third-party login and API authorization\n* \U0001F648 **Passkey Passwordless Login**: Supports passkey login based on biometrics or hardware keys, greatly enhancing security and login experience\n* \U0001FAB6 **Highly Available Webhook**: Enables real-time integration and collaboration with external systems, supporting event-driven automated workflows\n* \U0001F4DD **Built-in Todo Management**: Easily capture and manage daily tasks to stay organized and productive\n* \U0001F9D8 **Quiet Inbox Mode**: Minimizes system-level interruptions by default—messages are surfaced only as needed, letting the tool assist without intruding.\n* \U0001F317 **Dark Mode & Theme Extensions**: Supports adaptive system dark mode or manual switching, with future extensibility for custom color schemes\n* \U0001F916 **Quick Agent AI Setup**: Easily configure multiple large language models for instant AI experience, no manual setup required\n* \U0001F9F0 **Command-Line Powerhouse**: A built-in high-availability CLI that empowers developers and advanced users with precision control and seamless automation\n* \U0001F511 **Quick Access Token Management**: Generate and revoke access tokens with one click for secure and efficient API calls and third-party integrations\n* \U0001F4CA **Real-Time System Resource Monitoring**: High-performance WebSocket-based monitoring dashboard for instant visibility into runtime status\n* \U0001F4DF **Refined TUI Experience**: A beautifully designed terminal interface offering intuitive management of Ech0\n* \U0001F517 **Ech0 Connect**: A multi-instance connectivity feature that enables real-time status sharing and synchronization between Ech0 nodes\n* \U0001F3B5 **Seamless Music Integration**: Lightweight embedded music player providing immersive soundscapes and focus modes\n* \U0001F3A5 **Instant Video Sharing**: Natively supports intelligent parsing of Bilibili and YouTube videos\n* \U0001F0CF **Rich Smart Cards**: Instantly share websites, GitHub projects, and other media in visually engaging cards\n* ⚙️ **Advanced Customization**: Easily personalize styles and scripts for expressive, unique content presentation\n* \U0001F4AC **Comment System**: Quick Twikoo integration for lightweight, instant, and non-intrusive interactions\n* \U0001F4BB **Cross-Platform Compatibility**: Runs natively on Windows, Linux, and ARM devices like Raspberry Pi for stable deployment anywhere\n* \U0001F517 **Ech0 Hub Square**: Built-in Ech0 Hub Square for easily discovering, subscribing to, and sharing high-quality content\n* \U0001F4E6 **Self-Contained Binary**: Includes all required resources — no extra dependencies, no setup hassle\n* \U0001F517 **Rich API Support**: Open APIs for seamless integration with external systems and workflows\n* \U0001F0CF **Dynamic Content Display**: Supports Twitter-like card layouts with likes and social interactions\n* \U0001F464 **Multi-Account & Permission Management**: Flexible user and role-based access control ensuring privacy and security\n\n---\n\n## FAQ\n\n1. **What is Ech0?**\n   A lightweight, open-source self-hosted platform for quickly sharing thoughts, writings, and links. All content is locally stored.\n\n2. **What Ech0 is NOT?**\n   Not a professional note-taking app like Obsidian or Notion; its core function is similar to social feed/microblog.\n\n3. **Is Ech0 free?**\n   Yes, fully free and open-source under AGPL-3.0, no ads, tracking, subscription, or service dependency.\n\n4. **How do I back up and restore data?**\n   Since all content is stored in a local SQLite file, you only need to back up the files in the `/opt/ech0/data` directory (or the mapped path you chose during deployment). To restore, simply replace the data files with your backup. You can also use the online data management features in the settings under \"Data Management\" to quickly create, export, or restore snapshots. If the latest content does not appear after restoring, try manually restarting the Docker container.\n\n5. **Does Ech0 support RSS?**\n   Yes, content updates can be subscribed via RSS.\n\n6. **Why can't I publish content?**\n   Only administrators can publish. First registered user is admin.\n\n7. **Why no detailed permission system?**\n   Ech0 emphasizes simplicity: admin vs non-admin only, for smooth experience.\n\n8. **Why Connect avatars may not show?**\n   Set your instance URL in `System Settings - Service URL` (with `http://` or `https://`).\n\n9. **What is MetingAPI?**\n   Used to parse music streaming URLs for music cards. If empty, default API provided by Ech0 is used.\n\n10. **Why not all Connect items show?**\n    Instances that are offline or unreachable are ignored; only valid instances are displayed.\n\n11. **What content is not recommended?**\n    Avoid publishing dense content mixing text + images + extension cards. Long posts or extension cards alone are okay.\n\n12. **How to enable comments?**\n    Set up Twikoo backend URL in settings. Only Twikoo is supported.\n\n13. **How to configure S3?**\n    Fill in endpoint (without http/https) and bucket with public access.\n\n14. **How to join the Fediverse?**\n    You need to bind Ech0 to a domain name and fill in the domain in the server address field in the settings page. Once set, Ech0 will automatically join the Fediverse. Example: `https://memo.vaaat.com`"
    services:
        - name: Ech0
          icon: https://raw.githubusercontent.com/lin-snow/Ech0/main/docs/imgs/logo.svg
          template: PREBUILT
          spec:
            source:
                image: sn0wl1n/ech0
            ports:
                - id: web
                  port: 6277
                  type: HTTP
          domainKey: PUBLIC_DOMAIN
localization:
    zh-CN:
        description: 面向个人的新一代开源、自托管、专注思想流动的轻量级联邦发布平台。
        variables:
            - key: PUBLIC_DOMAIN
              type: DOMAIN
              name: 域名
              description: 你想将 Ech0 绑定在哪个域名上？
        readme: "\n# Ech0\n\n> 面向个人的新一代开源、自托管、专注思想流动的轻量级联邦发布平台。\n\nEch0 是一款专为个人用户设计的新一代开源自托管平台，低成本、超轻量，支持 ActivityPub 协议，让你轻松发布和分享想法、文字与链接。简洁直观的界面结合高效的命令行工具，让内容管理变得简单而自由。你的数据完全自主可控，随时随地与世界联通，构建属于你的思想网络。\n\n---\n\n## 产品亮点\n\n* ☁️ **原子级轻量**：内存占用不到 **15MB**，镜像大小不到 **50MB**，单 SQLite 文件存储架构\n* \U0001F680 **极速部署**：无需配置，从安装到使用只需 1 条命令\n* ✍️ **零干扰写作**：纯净的在线 Markdown 编辑器，支持丰富的 Markdown 插件与预览\n* \U0001F4E6 **数据主权**：所有内容存储于本地 SQLite 文件，支持 RSS 订阅\n* \U0001F510 **安全备份机制**：支持 Web、TUI、CLI 三种模式下一键导出、备份完整数据，支持后台自动备份\n* ♻️ **无感恢复支持**：支持 TUI/CLI 快照恢复与 Web 面板在线零停机恢复机制，保障数据安全无忧\n* \U0001F389 **永久免费**：AGPL-3.0 协议开源，无追踪/无订阅/无服务依赖\n* \U0001F30D **跨端适配**：完美兼容桌面/移动浏览器，支持手机、iPad、PC 三端响应式布局\n* \U0001F47E **PWA 适配**：支持作为 Web 应用安装，体验更接近原生\n* \U0001F3F7️ **优雅的标签管理与过滤**：智能标签系统、快速过滤与精准检索，让信息组织更高效、更直观\n* ☁️ **S3 存储集成**：原生适配 S3 兼容对象存储，轻松实现云端高效存储\n* \U0001F310 **ActivityPub 联邦**：与 Mastodon、Misskey 等平台互联共通，构建去中心化生态\n* \U0001F511 **OAuth2 和 OIDC 身份认证**：原生支持 OAuth2 协议，轻松接入第三方登录与 API 授权\n* \U0001F648 **Passkey 无密码登录**：支持基于生物识别/硬件密钥的 Passkey 登录方式，显著提升安全性与登录体验\n* \U0001F4DD **内置 Todo 管理**：轻松记录、管理每日待办事项，帮助你高效规划和追踪任务进度\n* \U0001F9D8 **安静的收件箱模式**：默认减少系统级打扰，信息按需呈现，回归工具“辅助而不干扰”的本质\n* \U0001FAB6 **高可用 Webhook**：支持与外部系统进行实时扩展与协作，实现事件驱动的自动化工作流\n* \U0001F317 **深色模式与主题扩展**：支持自适应系统或自由切换 Dark Mode，支持后期扩展自定义配色\n* \U0001F916 **快捷配置启动 Agent AI**：快捷配置多种大语言模型，无需动手折腾即可体验 AI\n* \U0001F9F0 **命令行利器**：内置高可用 CLI 工具，为开发者与高级用户提供极致掌控力与自动化体验\n* \U0001F511 **快捷访问令牌管理**：支持生成与一键吊销访问令牌，安全高效地完成 API 调用与第三方集成\n* \U0001F4CA **实时系统资源监控面板**：基于 WebSocket 的高性能监控模块，让你对运行状态一目了然\n* \U0001F4DF **极致 TUI 支持**：面向终端用户打造的友好交互界面，轻松对 Ech0 进行管理\n* \U0001F517 **Ech0 Connect**：全新多实例互联功能，实现 Ech0 实例间状态订阅与跟踪\n* \U0001F3B5 **无缝音乐集成**：内置超低资源占用的音乐播放器，提供沉浸式背景音乐与专注模式\n* \U0001F3A5 **即时视频分享**：原生支持哔哩哔哩/YouTube 视频智能解析\n* \U0001F0CF **丰富的快捷卡片**：支持网站链接、GitHub 项目等多种富媒体内容一键分享，让信息展示更加直观生动\n* ⚙️ **高级自定义功能**：为高级用户提供便捷自定义样式与脚本，分享更具表现力\n* \U0001F4AC **评论系统**：支持快捷接入 Twikoo 评论服务，轻量、快捷、无侵入，为你的内容带来即时互动与反馈\n* \U0001F4BB **跨平台兼容**：原生支持 Windows、Linux 以及树莓派等 ARM 架构设备，确保多样化部署场景下稳定运行\n* \U0001F517 **Ech0 Hub 广场**：内置 Ech0 Hub 广场，轻松发现、订阅和共享优质内容\n* \U0001F4E6 **二进制自包含**：集成完整资源，无需额外安装依赖或配置，极大简化部署流程\n* \U0001F517 **丰富的 API 支持**：提供开放 API，方便与其他系统集成，实现更灵活的应用场景\n* \U0001F0CF **内容展示支持**：支持类 X（Twitter）风格卡片展示，同时支持点赞分享等社交互动\n* \U0001F464 **多账户权限管理**：支持多账户体系，提供灵活的权限控制，保障内容和功能访问的安全性与私密性\n\n---\n\n## 常见问题\n\n1. **Ech0 是什么？**\n   Ech0 是一款轻量级的开源自托管平台，专为快速发布与分享个人想法、文字和链接而设计。它提供简洁的界面，支持零干扰的写作体验，所有数据存储于本地，确保用户对内容的完全控制。\n\n2. **Ech0 不是什么？**\n   Ech0 不是传统的笔记软件，设计之初并不是为了专业的笔记管理和记录（如 Obsidian、Notion 等），Ech0 的核心功能类似朋友圈/说说。\n\n3. **Ech0 是免费的吗？**\n   是的，Ech0 完全免费且开源，遵循 AGPL-3.0 协议。它没有广告、追踪、订阅或服务依赖。\n\n4. **如何进行备份和恢复数据？**\n   由于所有内容都存储在本地 SQLite 文件中，您只需备份 `/opt/ech0/data` 目录中的文件即可（具体选择部署时的映射路径）。在需要恢复时，直接将备份文件还原即可。当然也可以在“设置-数据管理”选项内使用快照功能快速管理数据。若恢复后数据未显示，手动重启 Docker 容器即可。\n\n5. **Ech0 支持 RSS 吗？**\n   是的，Ech0 支持 RSS 订阅，您可以通过 RSS 阅读器订阅您的内容更新。\n\n6. **为什么发布失败，提示联系管理员？**\n   当前版本设计上，只有管理员可以发布内容。部署后，首个注册的用户会自动被设置为管理员，其他用户权限需在设置中手动分配。\n\n7. **为什么没有明确的权限划分？**\n   Ech0 旨在保持简洁和轻量，目前仅区分管理员与非管理员。我们希望用户专注于分享，避免被复杂的权限管理所困扰。\n\n8. **为什么别人无法显示自己的 Connect 头像？**\n   需要在 `系统设置 - 服务地址` 中填入自己当前的实例地址（需带 http 或 https），例如 `https://memo.vaaat.com`。\n\n9. **设置中的 MetingAPI 项是什么？**\n   这是用于解析获取音乐流媒体直链的服务 API。如果不设置，则默认使用 Ech0 提供的默认 API。\n\n10. **为什么添加后的 Connect 只显示了一部分？**\n    后端会尝试获取所有 Connect 实例信息，如果某个实例挂了或无法访问，则会被自动过滤。\n\n11. **Ech0 不建议发布什么内容？**\n    Ech0 不建议发布同时包含“文字 + 图片 + 扩展内容（音乐/视频）”的密集内容，这违反了其设计初衷。同时，不推荐将其作为长篇大论的发布平台。\n\n12. **如何开启评论功能？**\n    在设置页面的 `评论API` 项中填入你部署后的 Twikoo 后端地址即可自动开启。\n\n13. **S3 存储如何配置？**\n    在存储设置页面填入配置信息。注意：endpoint 不需要填 http 或 https 开头，存储桶需开启公共访问权限。\n\n14. **如何加入联邦宇宙？**\n    绑定域名后，在设置界面的服务器地址填写该域名（如 `https://memo.vaaat.com`）即可。"
