Fusion
A lightweight RSS feed aggregator and reader.
Features
- Group, bookmark, search, automatic feed sniffing, OPML file import/export
- Supports RSS, Atom, and JSON feed types
- Responsive, dark mode, PWA, keyboard shortcuts
- Lightweight and self-hosted friendly
- Built with Golang and SQLite; deploys with a single binary or a Docker container
- Uses about 80MB of memory
- Internationalization (i18n): English, Chinese, German, French, Spanish, Russian, Portuguese, and Swedish
Installation
Docker
Use
latesttag for the latest release version.Use
maintag for the latest development version.
- Docker CLI
docker run -it -d -p 8080:8080 \ -v $(pwd)/fusion:/data \ -e PASSWORD="fusion" \ ghcr.io/0x2e/fusion:latest
- Docker Compose
version: "3" services: fusion: image: ghcr.io/0x2e/fusion:latest ports: - "127.0.0.1:8080:8080" environment: - PASSWORD=fusion restart: "unless-stopped" volumes: # Change `./data` to where you want the files stored - ./data:/data
Pre-built binary
Download from Releases.
Build from source
Check out the "Contributing" section.
Configuration
All configuration items can be found in .env.example.
Fusion can be configured in many ways:
- System environment variables, such as those set by
export PASSWORD=123abc. - Create a
.envfile in the same directory as the binary. Note that values in.envfile can be overwritten by system environment variables.
Contributing
Contributions are welcome! Before contributing, please read the Contributing Guidelines.
- Prepare environment: Go 1.24+, Node.js 24+ (and pnpm).
- Check out the commands in
scripts.sh.
For example:
