Overview
Discover what makes Miniflux powerful
Miniflux is a **minimalist, opinionated feed reader** designed for developers who value speed, privacy, and extensibility. The application is a single static binary written in Go, making it trivial to deploy across Linux distributions, Docker containers, or even bare‑metal servers. Its architecture revolves around a **thin API layer** that exposes CRUD operations for feeds, articles, and user settings, while the heavy lifting—feed parsing, content extraction, and search indexing—is performed locally on a PostgreSQL backend. This design keeps network traffic to a minimum, allowing developers to host Miniflux behind reverse proxies or VPNs without compromising performance.
Language & Runtime
Web Framework
Database
Feed Parsing
Overview
Miniflux is a minimalist, opinionated feed reader designed for developers who value speed, privacy, and extensibility. The application is a single static binary written in Go, making it trivial to deploy across Linux distributions, Docker containers, or even bare‑metal servers. Its architecture revolves around a thin API layer that exposes CRUD operations for feeds, articles, and user settings, while the heavy lifting—feed parsing, content extraction, and search indexing—is performed locally on a PostgreSQL backend. This design keeps network traffic to a minimum, allowing developers to host Miniflux behind reverse proxies or VPNs without compromising performance.
Technical Stack
- Language & Runtime: Go 1.21+, compiled to a statically linked binary; no runtime dependencies.
- Web Framework: Custom HTTP router with middleware for CORS, CSRF, and content‑security policies.
- Database: PostgreSQL (full‑text search via
tsvector), with optional SQLite for lightweight deployments. - Feed Parsing: Built‑in support for Atom, RSS, and JSON Feed; uses
go-feedparserunder the hood. - Content Extraction: Local Readability parser written in Go; customizable CSS selectors for scraping.
- Search Engine: PostgreSQL full‑text search powered by
pg_trgmfor fuzzy matching and relevance scoring. - Containerization: Official Docker image available; supports multi‑stage builds for minimal images.
Core Capabilities
- RESTful API: Exposes endpoints such as
/api/v1/feeds,/api/v1/articles, and authentication via JWT or session cookies. Developers can build custom dashboards, mobile clients, or integrate with existing workflows. - Webhooks & Extensions: Supports outbound webhooks on article events, enabling integration with task managers or notification services. The API also accepts custom headers for authentication and routing.
- Full‑text Search: Queryable via
/api/v1/search?q=<term>; leverages PostgreSQL’s native full‑text search with stemming and stop words. - Attachment Handling: Stores enclosures (podcasts, images) in a local filesystem or cloud storage; provides secure download URLs.
- Internationalization: 20 language packs are bundled as JSON files, easily extended with new translations.
Deployment & Infrastructure
Miniflux’s statically linked binary eliminates the need for package managers, making it ideal for immutable infrastructure. For production, a typical stack includes:
- Reverse Proxy (Nginx/Traefik) – handles TLS termination, HTTP/2 disabling for privacy, and rate limiting.
- PostgreSQL – either a managed cloud instance or a local container; the schema is lightweight (~5 MB).
- Storage – local disk for enclosures; can be swapped with S3‑compatible object storage via environment variables.
- Scaling – multiple instances behind a load balancer share the same PostgreSQL database; the API is stateless except for session cookies, enabling horizontal scaling.
Containerization is straightforward: the Docker image exposes port 8080, accepts environment variables for DB connection, and supports volume mounts for persistent storage.
Integration & Extensibility
- Custom Scrapers: Developers can define CSS selectors or regex rules in the admin UI to tailor content extraction for niche sites.
- Media Proxy: All media requests pass through an internal proxy, stripping tracking parameters and enforcing
no-referrerpolicies. - YouTube Privacy: Videos are embedded via
youtube-nocookie.com, with optional fallback to Invidious. This is exposed as a configuration flag in the API. - OpenAPI Spec: The REST API is documented with Swagger/OpenAPI, facilitating SDK generation in multiple languages.
Developer Experience
- Configuration: Environment‑driven (
MINIFLUX_prefixed variables) or a simpleconfig.toml; no complex YAML or JSON required. - Documentation: The README, API docs, and a dedicated
docs/folder provide thorough guidance. The codebase is well‑structured with clear package boundaries. - Community & Support: Active GitHub discussions, a dedicated Discord channel, and frequent releases under Apache 2.0 license encourage contributions.
- Extensibility: The plugin system is minimal but sufficient; developers can fork the repo, add middleware, or expose new endpoints without altering core logic.
Use Cases
| Scenario | Why Miniflux? |
|---|---|
| Enterprise Knowledge Base | Centralized, privacy‑first feed ingestion with custom scrapers for internal blogs. |
| Developer Toolchain | Lightweight API allows building CLI tools or VS Code extensions that pull unread articles. |
| IoT Dashboard | The static binary can run on Raspberry Pi, pulling feeds for a home automation hub. |
| Personal Productivity | Zero‑tracking, keyboard‑centric UI plus API for automated bookmarking to services like Pocket. |
Advantages Over Alternatives
- Performance: Go’s concurrency model delivers sub‑200 ms API responses even with thousands of feeds.
- Privacy: Built‑in tracker removal, no telemetry, and media proxy set it apart from cloud‑hosted readers.
- Licensing: Apache 2.0 allows commercial use without copyleft obligations, unlike GPL‑licensed readers.
- Simplicity: A single binary and a PostgreSQL database reduce operational overhead compared to monolithic PHP or Node.js stacks.
- Extensibility: Custom scrapers and webhooks give developers control over
Open SourceReady to get started?
Join the community and start self-hosting Miniflux today
Related Apps in other
Immich
Self‑hosted photo and video manager
Syncthing
Peer‑to‑peer file sync, no central server
Strapi
Open-source headless CMS for modern developers
reveal.js
Create stunning web‑based presentations with HTML, CSS and JavaScript
Stirling-PDF
Local web PDF editor with split, merge, convert and more
MinIO
Fast, S3-compatible object storage for AI and analytics
Weekly Views
Repository Health
Information
Explore More Apps
MiroTalk SFU
Free, browser‑based real‑time video conferences
Gatus
Developer‑oriented health dashboard for services
Viseron
Local NVR with AI-powered vision
mosparo
Spam protection without puzzles, just smart rules
RetroShare
Decentralized secure communication and file sharing
Plane
Open‑source project management for teams
