必须设置 FUSION_PASSWORD,否则需显式开启 FUSION_ALLOW_EMPTY_PASSWORD 才能无认证运行;默认监听 8080 端口,可用 FUSION_PORT 修改;Docker 部署需挂载 /data 卷以持久化数据库。

fusion
0x2EMIT活跃维护轻量级、适合自托管的 RSS 阅读器,帮你把分散的订阅源集中到一个自己掌控的界面里阅读。
A lightweight, self-hosted friendly RSS reader
chmod +x fusion
FUSION_PASSWORD="fusion" ./fusionREADME 未说明硬件要求,未提及 GPU 或显存;提供预编译二进制和 Docker 镜像,可在本机或家用服务器运行。
轻量自托管 RSS 阅读器,单二进制或 Docker 部署,专注无干扰阅读
轻量级、适合自托管的 RSS 阅读器,帮你把分散的订阅源集中到一个自己掌控的界面里阅读。
核心能力
- 支持未读追踪、书签、搜索和 Google Reader 风格快捷键
- 解析 RSS/Atom 并自动发现订阅源,支持分组管理
- 兼容 Fever API,可接入 Reeder、Unread、FeedMe 等客户端
- 响应式 Web UI 并支持 PWA
- 内置英中德法西俄葡瑞典八种语言界面
容易踩的坑
- v1.3.0最新正式版2026-10-07 · 2026-10-07 09:53 UTC
What's Changed
- chore: upgrade backend and frontend dependencies by @0x2E in https://github.com/0x2E/fusion/pull/256
- fix(frontend): correct Base UI Select, Button, and dialog usage by @0x2E in https://github.com/0x2E/fusion/pull/257
- feat(frontend): support details/summary in article content by @0x2E in https://github.com/0x2E/fusion/pull/259
- Better french translation by @Yashirow in https://github.com/0x2E/fusion/pull/260
- fix: address issues found in end-to-end testing and review by @0x2E in https://github.com/0x2E/fusion/pull/265
- fix(frontend): scope unread-view undo pins to the current list identity by @0x2E in https://github.com/0x2E/fusion/pull/266
- fix(backend): normalize HTML titles to plain text on ingest by @0x2E in https://github.com/0x2E/fusion/pull/267
- feat: persist settings in backend by @0x2E in https://github.com/0x2E/fusion/pull/268
- feat: automatically mark opened articles as read by @0x2E in https://github.com/0x2E/fusion/pull/270
- chore: optimize docs, types, and CI for agentic coding by @0x2E in https://github.com/0x2E/fusion/pull/271
- feat(frontend): require confirmation before signing out by @0x2E in https://github.com/0x2E/fusion/pull/272
- ci: harden release pipeline by @0x2E in https://github.com/0x2E/fusion/pull/273
New Contributors
- @Yashirow made their first contribution in https://github.com/0x2E/fusion/pull/260
Full Changelog: https://github.com/0x2E/fusion/compare/v1.2.1...v1.3.0
- v1.2.12026-07-28 · 2026-07-28 13:07 UTC
查看更新说明
What's Changed
- fix: menu interactions not working after updating from Radix to BaseUI by @pompydev in https://github.com/0x2E/fusion/pull/253
Full Changelog: https://github.com/0x2E/fusion/compare/v1.2.0...v1.2.1
- v1.2.02026-07-17 · 2026-07-17 16:15 UTC
查看更新说明
What's Changed
- Improve article drawer word wrapping by @0x2E in https://github.com/0x2E/fusion/pull/229
- Allow unauthenticated mode when password and OIDC are unset by @0x2E in https://github.com/0x2E/fusion/pull/234
- refactor: cursor-based pagination, server-side bookmark filtering, and article-list cleanup by @0x2E in https://github.com/0x2E/fusion/pull/248
- refactor(frontend): migrate to Base UI, update deps, adopt typeset by @0x2E in https://github.com/0x2E/fusion/pull/250
Full Changelog: https://github.com/0x2E/fusion/compare/v1.1.1...v1.2.0
- v1.1.12026-02-23 · 2026-02-23 05:55 UTC
查看更新说明
What's Changed
- Improved frontend accessibility and interaction semantics.
- Added support for legacy OIDC callback path.
- Accepted Kubernetes-style
FUSION_PORTvalues.
Full Changelog: https://github.com/0x2E/fusion/compare/v1.1.0...v1.1.1
- v1.1.02026-02-22 · 2026-02-22 08:09 UTC
查看更新说明
What's changed
- Added Fever API support
Full Changelog: https://github.com/0x2E/fusion/compare/v1.0.0...v1.1.0
用户点评
登录用户的真实使用记录,可按版本和硬件筛选还没有人点评。第一个说出真实体验的人最有价值。
Features
- Fast reading workflow: unread tracking, bookmarks, search, and Google Reader-style keyboard shortcuts
- Feed management: RSS/Atom parsing, feed auto-discovery, and group organization
- Fever API compatibility for third-party clients (Reeder, Unread, FeedMe, etc.)
- Responsive web UI with PWA support
- Self-hosting friendly: single binary or Docker deployment
- Built-in i18n: English, Chinese, German, French, Spanish, Russian, Portuguese, Swedish
- No AI features by design: focused, distraction-free RSS reading
Installation
Download the binary for your platform from Releases, then run:
chmod +x fusion
FUSION_PASSWORD="fusion" ./fusion
Windows (PowerShell):
$env:FUSION_PASSWORD="fusion"
.\fusion.exe
Open http://localhost:8080.
latest is the latest release image.
main is the latest development build.
docker run -it -d -p 8080:8080 \
-v $(pwd)/fusion:/data \
-e FUSION_PASSWORD="fusion" \
ghcr.io/0x2e/fusion:latest
Open http://localhost:8080.
Docker Compose example:
version: "3"
services:
fusion:
image: ghcr.io/0x2e/fusion:latest
ports:
- "127.0.0.1:8080:8080"
environment:
- FUSION_PASSWORD=fusion
restart: unless-stopped
volumes:
- ./data:/data
See Contributing.
- Deploy on Fly.io
- Deploy on Railway (community maintained)
Configuration
Most users only need one setting to get started:
- Set
FUSION_PASSWORD. - For local trusted environments only: set
FUSION_ALLOW_EMPTY_PASSWORD=trueto run without auth when OIDC is also disabled.
Then configure based on your goal:
- Run locally or on a home server
- Optional:
FUSION_PORT,FUSION_DB_PATH
- Optional:
- Expose Fusion behind a reverse proxy
- Configure:
FUSION_CORS_ALLOWED_ORIGINS,FUSION_TRUSTED_PROXIES
- Configure:
- Use mobile/desktop Fever clients (Reeder, Unread, FeedMe)
- Configure:
FUSION_FEVER_USERNAME(default:fusion) - Guide:
docs/fever-api.md
- Configure:
- Use SSO instead of password-only login
- Configure:
FUSION_OIDC_* - Set
FUSION_OIDC_REDIRECT_URItohttps://<host>/api/oidc/callback https://<host>/oidc/callbackis accepted for compatibility
- Configure:
- Tune feed pull behavior
- Configure:
FUSION_PULL_INTERVAL,FUSION_PULL_TIMEOUT,FUSION_PULL_CONCURRENCY,FUSION_PULL_MAX_BACKOFF - Optional for private networks:
FUSION_ALLOW_PRIVATE_FEEDS
- Configure:
- Troubleshoot deployments
- Configure:
FUSION_LOG_LEVEL,FUSION_LOG_FORMAT
- Configure:
For the complete variable reference, see .env.example.
Legacy env names (DB, PASSWORD, PORT) are still accepted for backward compatibility.
Documentation
- API conventions (the route inventory lives in
backend/internal/handler/handler.go):docs/api-conventions.md - Fever API compatibility:
docs/fever-api.md - Backend design:
docs/backend-design.md - Frontend design:
docs/frontend-design.md - Legacy schema reference (kept for migration work):
docs/old-database-schema.md
Development
- Requirements: Go and Node.js versions are pinned by
backend/go.modandfrontend/package.json(engines); plus pnpm - Helpful commands are in
scripts.sh - Frontend i18n key check:
cd frontend && pnpm run check:i18n
Example:
./scripts.sh build
Contributing
Please report bugs and propose features via issues — there is no need to open pull requests. See Contributing for local development.
Credits
- Feed parsing powered by gofeed