Freshrss
Where Miniflux strips reading down, FreshRSS gives you knobs - the feature-rich pole of self-hosted RSS, comfortable with thousands of feeds. It's a multi-user PHP aggregator (host family and friends on one instance, with an anonymous reading mode) with the reading workflow refined over a decade: favorites, custom tags, powerful filter and search queries, three reading views, and statistics that reveal each site's publishing frequency - useful for pruning subscriptions. Two properties make it the standard choice. First, the Google Reader-compatible API (plus a Fever API) syncs with virtually every serious RSS client - Reeder, NetNewsWire, ReadYou, FeedMe, Fluent Reader - so your phone reads from your server. Second, native WebSub support means compatible sources (WordPress, Blogger, Medium, Friendica) push new articles instantly instead of waiting for polling. A 50+ extension ecosystem adds what truncated feeds omit - full-text content fetching, reading-time estimates, trending views, auto-unsubscribe for dead feeds - alongside community themes and custom CSS. OPML import/export keeps subscriptions portable, a CLI handles administration, and article sharing posts to many services. AGPL-licensed, running on SQLite, MySQL, or PostgreSQL. Feedly Pro's feature set, minus Feedly's subscription and its algorithms.
Zusam
From the German "zusammen," together: Zusam is a private social space for a group of friends - a self-hosted alternative to the family WhatsApp group or the friends Facebook group, with no ads, algorithms, or data harvesting in between. The AGPLv3 project is deliberately modest in scope and stack: a Symfony PHP backend exposing a REST API over SQLite, with a lightweight Preact single-page frontend, designed for a low server footprint that runs comfortably on small hardware. Groups post messages into shared feeds that handle real life well: video and image uploads (with FFmpeg processing), photo albums for trips and events, and rich link previews with inline embeds for YouTube, Vimeo, Imgur, SoundCloud, Twitch, and Bandcamp - so sharing a song or a clip looks the way it should. When something needs to leave the circle, public link generation exposes a single message to non-members without opening the group. The interface is fully responsive and mobile-friendly, targeting Firefox ESR and recent Chrome. It is the small-web answer to a real question: where does a group chat's shared history live when you want it owned by the group instead of a platform?
Coral
Comment sections at the Washington Post, the Wall Street Journal, and newsrooms across 30 countries run on Coral (also known as Talk) - the platform built by journalists' technologists, started under the Mozilla Foundation and now stewarded by Vox Media as an Apache-2.0 project serving 23 languages. Its founding premise is that online comments are broken and moderation is the fix. Moderators get a full queue system - reported comments, system-held pending comments, and configurable pre-moderation - backed by AI toxicity scoring that warns commenters before posting and holds high-scoring comments for review, Akismet spam detection, banned and suspect word lists, and automatic repeat-offender handling that pre-moderates users whose rejection rate crosses a threshold. Readers get features designed for healthier conversation: journalist badges in threads, muting of annoying voices, notifications, instant new-comment alerts, and timeouts rather than just bans. For publishers the economics are the point - no ads, no trackers, no hidden pixels anywhere in the code, full ownership of audience data, and GDPR compliance beyond requirements. Integration is one embedded script; SSO connects existing registration, and a GraphQL API supports customization and extension.
Nzbget
Written in optimized C++ where competitors use Python or Java, NZBGet saturates fast connections while idling on CPU and RAM - which is why the performance-obsessed Usenet downloader has long been the client of choice for NAS boxes, Raspberry Pis, and routers as much as full servers. The engineering shows in the recovery pipeline. Instead of shelling out to par2cmdline, NZBGet integrates the par2 source directly and exploits its knowledge of exactly which articles failed - quick par-verification checks only what needs checking, and its own multicore repair implementation runs 2-3x faster than the external tool on the same hardware. Fast par-rename deobfuscates scrambled filenames in seconds without a full verification pass, and rar-rename recovers names for multivolume archives even when no par2 files exist. DirectWrite assembles articles straight into sparse destination files, skipping temporary-file churn entirely, with an article cache and queue-pausing options to eliminate disk contention. Automation is complete: a remote web interface, full JSON-RPC API, RSS feeds with duplicate detection, scheduling and prioritization, and an extension manager for Python and Bash scripts triggered by download events. Sonarr, Radarr, and every major indexer integrate natively.
Wally
Started as an ExpenseOwl-inspired project, Wally grew into a lightweight, self-hosted expense tracker more capable in every direction its author touched. The backend is Python FastAPI over SQLite, which means every deployment ships a full REST API with interactive documentation at /api/docs - automating imports or wiring in external tools requires no reverse engineering, and when the optional login page is enabled you can mint scoped API keys from the Settings page for token-based integrations. The transactions view is built on AG Grid, bringing real search, column sorting, and per-column filtering to your ledger, with a footer totaling rows, income, and expenses for whatever slice you have filtered. Dashboards go beyond the usual monthly doughnut: a Change button swaps in year-scale line graphs so you can track a single category - restaurants, say - across time. Recurring transactions edit intelligently, letting you apply changes to all instances or only future ones. CSV import and export use a simple six-column format handled from Settings, the refined dark theme is genuinely easy on the eyes, and the interface is translated into more than ten languages. The whole thing runs from one small container with a single data volume.
Hammond
When Clarkson, the once-popular fuel logger, stopped receiving updates, Hammond stepped in as its logical successor - a self-hosted vehicle expense tracker. Written in Go with a Vue.js interface and SQLite storage - a single lightweight container, no external database - it tracks every cost your vehicles generate: fuel fill-ups with cost, volume, and odometer readings; maintenance and repairs; and arbitrary other expenses, each attachable with photos and documents stored against the vehicle. The multi-user, multi-vehicle design is what sets it apart from phone apps: a household or small business adds all its vehicles and all its drivers, shares vehicles across users, and every fill-up lands in one ledger no matter who was driving. The Quick Entries feature respects how expenses actually happen - snap a photo of the receipt or pump screen at the gas station, then complete the structured entry later when you have a minute. Reporting works at both the vehicle level (cost per distance, fuel economy trends) and across the whole fleet. Migration matters here: importers for Clarkson, Fuelly, and Drivvo bring years of fill-up history along, so switching does not mean starting your data over.
Cockpit
Built by an agency in 2011 and refined by real client work since, Cockpit is a headless CMS whose pragmatism is earned. It's a pure content backend: model your data, let editors manage it, and fetch it over REST or GraphQL from any frontend - React, Vue, Flutter, a static site generator, or an IoT dashboard. Content modeling covers three shapes: Collections for repeatable items (posts, products, events), Singletons for one-off content (settings, about pages), and Trees for hierarchies (navigation, categories), all assembled from 20+ field types including relationships. The API layer is unusually capable: MongoDB-style query filtering, field selection to trim payloads, automatic image optimization through the assets API, and built-in caching. Localization is first-class with per-field multi-language content and fallback support; user management includes roles, granular permissions, two-factor authentication, and API tokens; and webhooks push changes into external workflows. Agencies get multi-tenant Spaces - several sites or clients from one installation. The operational footprint is refreshingly small: PHP plus either SQLite or MongoDB, no build steps, no toolchain, extensible through hooks, events, and addons (pages/SEO, forms, full-text search, layout components). Where enterprise headless platforms bill per seat and per locale, Cockpit is MIT-licensed and simply yours.
Hasty Paste
Paste some text, hit save, share the link - Hasty Paste is a fast, minimal pastebin written in Python on the async Quart framework, named, by its author's own admission, "because you use it so fast without a care in the world." No accounts, no authentication, no friction - built for the everyday case of handing a debug log, config snippet, or stack trace to someone in tech support or a chat channel. Pastes get randomly generated IDs, with an optional "long" ID mode that makes brute-force URL guessing impractical, and expiry times ensure throwaway content actually gets thrown away. Optional Pygments syntax highlighting makes code readable, a dark theme spares your eyes, and the whole interface works without JavaScript - it renders in terminal browsers and under the strictest script blockers. Storage is a custom flat-file system (no database), caching runs internally or through Redis for busier instances, and a REST API plus the companion "Hastily Paste It" CLI script enable piping command output straight into a paste from the terminal. The Alpine-based Docker image is tiny, resource usage is minimal, and the license is AGPL.
ChatChat
One clean interface in front of Anthropic, OpenAI, Google Gemini, Cohere, and more: Chat Chat is a Next.js front door to the major AI providers, ending the juggling of separate subscriptions, tabs, and UIs per model. Bring your own API keys, pick a provider and model per conversation, and switch between them as the task demands: Claude for long-form reasoning, GPT for code, Gemini for multimodal work - the interface stays identical. Beyond configured presets, custom providers plug in with their own API endpoints and keys, which covers OpenAI-compatible gateways and local inference servers. The design splits into two dedicated modes: a chat interface for conversational work with customizable system prompts, and a search interface that pairs AI processing with query handling for research-style questions. The stack is modern and hackable - Next.js 14, Tailwind CSS, shadcn/ui on Radix primitives, Jotai for state - with full internationalization including English, Chinese, and Japanese. Self-hosting means your conversation history and API keys live on your instance rather than a third-party wrapper service, and pay-per-token API pricing typically beats stacking multiple monthly chat subscriptions. AGPL-licensed and deliberately simple to deploy: one container, environment variables for keys, done.
DumbBudget
"Stupid simple software" is the entire philosophy at DumbWare.io, and DumbBudget delivers it: no over-engineering, no complexity, no accounts, no bank connections - just a clean, modern ledger for money in and money out. Log income and expenses, assign categories, and watch real-time balance calculations update as you type. Finding transactions is quick: filter by type, narrow by date range, sort by date or amount. When tax season or spreadsheet analysis calls, everything exports to CSV. Access control matches the philosophy - a single PIN (set via one environment variable) gates the app, backed by real security engineering: rate limiting on PIN attempts, temporary lockout after failures, secure session handling, and no sensitive data in browser storage. Multi-currency support covers the ISO codes, and a SITE_TITLE variable names each instance - deliberately useful, because running separate instances per account or family member is the intended pattern for multi-user needs. The responsive UI ships light and dark themes and installs as a PWA on phones, where expense logging actually happens. Configuration is five environment variables; data persists in one folder. If Actual Budget and Firefly III feel like accounting software, this is the notepad that gets used. GPL-licensed.
Hiccup
"Get to your most important links, FAST" - Hiccup's README states its whole mission in that one line, and the static start page delivers it. It is a client-side React single-page app - no backend, no database, no accounts - driven entirely by a config.json that defines featured link cards, categorized sections, and search providers. The search bar is the power feature: it queries your own links by name, URL, and tag while simultaneously offering external providers like Google, DuckDuckGo, and Amazon (plus custom URL-template providers you define), with arrow-key navigation and Enter to launch, so muscle memory replaces mousing. Editing happens in the browser - drag and drop links and background images, tweak cards in edit mode - with changes persisting to localStorage; a built-in config manager exports the JSON for hosting, and remote profile loading pulls a shared config across every browser and device you use. Multiple profiles keep home-server, work, and dev-tool link sets separate. PWA support installs it on a phone home screen, caching strategies keep it fast offline, read-only mode suits kiosk displays, and Cmd/Ctrl+/ reveals the full hotkey reference. Serve it from any static host and point your new tab at it.
Silicon Notes
"Somewhat lightweight, low-friction" is how Silicon Notes' author describes the personal knowledge base - written after DokuWiki's editor "drove me mad" and no existing wiki quite fit. The philosophy is that small frequent annoyances compound into cognitive load with no return, so everything here is optimized for frictionless daily use. Notes are written in plaintext Markdown and rendered as clean HTML with Pygments syntax highlighting for code blocks; pages get bi-directional relationships (backlinks), so the knowledge base becomes a connected web rather than a folder tree; and full-text plus title search retrieves anything fast. A table of contents lives in the left sidebar - "where it belongs" - editable while you read without scrolling away. Page history tracks revisions for auditing and rollback, JSON export/import keeps everything portable, and the mobile layout is genuinely usable. The stack is deliberately minimal: Python and Flask with Mistune for Markdown and SQLite for storage - no big frameworks, just a few small dependencies. One honest caveat: there is no built-in authentication, so deploy it behind a VPN, private network, or reverse-proxy auth layer. For a solo engineer's brain, it is exactly enough.
Gray Duck Mail
Email discussion lists - the venerable listserv pattern where one address relays to a whole group - without the notorious setup pain of Mailman or Sympa: that is Gray Duck Mail. Its architectural trick is requiring no mail server of your own: the C#/ASP.NET Core app monitors a POP3 inbox at any external email host supporting POP3/SMTP and aliasing, relays each incoming message to all list members via SMTP, and archives it for browsing in the web interface. Replies route back to the entire group automatically. The tedious parts of list management are handled by convention: dedicated aliases process join requests, subscription confirmations, and unsubscribes, while a bounce alias in the return-path catches delivery failures so dead addresses get handled instead of silently rotting. The web administration interface creates and removes lists, manages contacts, browses message archives, and imports or exports the local database for backup. GPLv3-licensed, Docker-distributed, and fully code-documented, it targets exactly the groups email still serves best - neighborhoods, schools, congregations, workplaces, and families - where one message keeping everyone in the loop beats yet another app nobody wants to install.
Commento++
When Commento's original maintainer went quiet, Commento++ bundled the community's bug fixes and stalled merge requests into a batteries-included release of the beloved Go-based Disqus alternative - and kept building. The core promise is unchanged: an embeddable comments box that is orders of magnitude lighter and faster than Disqus, with no ads, tracking, or data sales - two lines of HTML and a PostgreSQL database. On top of Markdown comments, voting, Disqus import, OAuth login (Google, GitHub, Twitter) plus SSO, sticky comments, thread locking, and email notifications, the fork's additions are substantial: WebSocket-powered live comment updates with permalinks and highlight animations for new arrivals, guest commenting with a name, a cross-domain moderation dashboard for approving and deleting comments in one place, MathJax rendering support, wildcard domain matching, a reInit hook that makes single-page-application integration clean, and Perspective API spam scoring alongside the existing Akismet integration. Optional page-view logging graphs traffic on the dashboard, native SSL termination works without a proxy, and script-tag data attributes control fonts, CSS overrides, deleted-comment visibility, and polling-versus-WebSocket behavior.
Oxigen
The social preview cards shown when links hit Twitter, LinkedIn, Slack, or Discord, generated on the fly: Oxigen is a small Go service for dynamic Open Graph images, no designer required per page. Instead of exporting static images per page, you compose a card once and drive it with parameters: title, author, website, logo, background image, and background dimming all arrive as URL query arguments, so your og:image meta tag simply points at the Oxigen endpoint with the page's own values substituted in. Every blog post, product page, and doc gets a branded, correctly sized preview generated on the fly. A built-in web UI covers interactive composition - tweak the text and imagery, watch the preview update, copy the resulting URL - while the same rendering path serves programmatic API use from static site generators, CMS templates, or build pipelines. Rendering is pure Go using the gg 2D graphics library, freetype fonts, and the imaging package, built on the kyoto framework by that project's author. Deployment is one stateless container on port 80 with no database and no external dependencies, so instances scale and restart freely.
GlitchTip
GlitchTip speaks Sentry's protocol without Sentry's operational weight - open-source error tracking that your existing SDKs already understand. The pitch is pragmatic: instrument your application with the official Sentry SDKs you already know - any language they cover - and point the DSN at your own GlitchTip instance instead. Errors, exceptions, log messages, and Content Security Policy violations flow into one place for triage, grouped into issues with stack traces, with alerts delivered by email or webhook the moment things break. Where self-hosted Sentry has ballooned into a docker-compose stack of twenty-plus containers, GlitchTip is a deliberately lean Django and PostgreSQL application a small team can actually run. Beyond errors, it bundles three more monitoring concerns: performance monitoring takes a works-out-of-the-box approach - no dashboard building, just your slowest web requests, database queries, and transactions surfaced automatically; uptime monitoring pings your sites and alerts on failures, or runs in reverse as a dead-man's-switch heartbeat for cron jobs that must check in on schedule; and log search puts application logs alongside errors for faster debugging. Unlimited projects and team members, MIT-licensed, built by Burke Software - your event volume is limited only by your own hardware.