mirror of
https://github.com/0x2E/fusion.git
synced 2025-12-22 06:27:06 +00:00
main
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:
./scripts.sh build
Credits
Description
Languages
Go
39.2%
TypeScript
32.7%
Svelte
25.4%
CSS
1%
Shell
0.6%
Other
1.1%
