Awesome Selfhosted: How to Actually Use the List in 2026
The awesome-selfhosted list is the canonical catalog of self-hostable software — and a terrible place to choose from. How to read it like a maintainer and pick your first apps.
Published: 2026-08-28
Awesome-selfhosted is the canonical, community-maintained GitHub list of self-hostable software: free network services and web applications you run on your own server instead of renting from a SaaS company. If you have ever wondered whether there is an open-source replacement for Google Photos, Dropbox, LastPass, or Notion, the answer is almost certainly on it. It is also 1,500+ links crammed into one flat Markdown file, which makes it a wonderful reference and a terrible place to actually choose software. This guide is about the second part: how to read the list, judge an entry in thirty seconds, and get from 1,500 options to the ten apps worth putting on your first server.
What the list is and where it lives
The list lives in the awesome-selfhosted/awesome-selfhosted repository on GitHub, where it has been maintained since 2015 by a rotating cast of volunteer editors and thousands of contributors. Every entry is a pull request that someone reviewed. There is also a generated web version at awesome-selfhosted.net, built from the same data, with slightly friendlier navigation and per-entry metadata like license and language.
What keeps the list useful is that it has real inclusion criteria, enforced in review. Software has to be actively maintained — projects with no activity for around a year get flagged and eventually moved to an archive section rather than silently rotting in place. It has to be actually self-hostable: you must be able to run the server component yourself, so client apps for proprietary services and "open core" products whose server is a black box do not qualify. And it is overwhelmingly free and open-source software; the handful of proprietary-but-self-hostable entries are marked as such and kept in their own lane. The result is a directory with a floor: almost nothing on it is a scam or vaporware.
The scale is the point and the problem. With 1,500+ entries across more than a hundred categories, it is the most complete map of the self-hosting world that exists. Nobody else — not any startup directory, not any curated blog — covers this much ground with this much scrutiny per entry.
The problem with the raw list
Here is what the list will not do for you, and it is worth being honest about because the gap is exactly where people get stuck.
The categories are flat and alphabetical. "Software Development - Project Management" sits next to "Software Development - Testing" whether you care about either or not, and within each category, entries are sorted A to Z. A world-class project with 80,000 GitHub stars and a weekly release cadence renders identically to a hobby project one person maintains on alternate weekends. There is no popularity signal, no maintenance health indicator, no "most people pick this one." The one-line descriptions are written by the projects themselves, so everything sounds equally capable.
There are also no comparisons. The list will happily show you six self-hosted photo managers and offer zero guidance on which one to run. That is a deliberate editorial choice — the maintainers curate for inclusion, not ranking — but it means the list answers "what exists?" and refuses to answer "what should I use?". Alphabetical ordering makes it worse: the community-default answer in a category is regularly buried mid-list between two projects nobody deploys. If you read the list top to bottom as a shopping guide, you will spend a weekend evaluating software that a five-minute look at commit history would have eliminated.
How to read a list entry like a maintainer
Experienced self-hosters do not read the descriptions. They open the repo link and check five signals, in roughly this order:
Last commit and release recency. This is the single strongest signal. A project with commits this month and a release in the last quarter is alive. A project whose last release is eighteen months old is a risk you are choosing to take, no matter how good the README looks. Self-hosted software is never "done" — it has dependencies, CVEs, and integrations that decay.
GitHub stars, with a grain of salt. Stars are a lagging popularity proxy, not a quality score. They over-reward old projects and anything that hit the Hacker News front page once. But the order of magnitude matters: a category leader with 50,000 stars has a community that has found the bugs you would otherwise find yourself, and an ecosystem of guides, integrations, and answered questions. Between 40,000 stars and 400, the difference is real. Between 12,000 and 9,000, it is noise.
License. The list labels every entry. AGPL, GPL, MIT, Apache — for personal use, any of them is fine, and the label mostly tells you about the project's philosophy. What you are actually watching for is license changes: a project that recently moved from an open license to a source-available one is signaling a commercial pivot, and the free version's future is now a business decision, not a community one.
Deployment method. Look for an official Docker image and a documented Docker Compose file. This is partly convenience and partly a proxy for operational maturity: a project that ships good Compose documentation has thought about upgrades, persistent data, and reverse proxies. If the install instructions start with compiling from source or hand-editing a dozen config files, the maintenance burden will match.
Demo links and stack. A public demo means you can evaluate the actual product in ninety seconds instead of installing it to find out you hate the UI. And the language tag is an operational signal, not a religious one: it tells you what you will be reading the day something breaks, and roughly what to expect from the runtime — a single Go binary behaves differently from a PHP app that needs a web server, a database, and a cache to say hello.
Run those five checks and most categories collapse from fifteen candidates to two or three. That is the entire skill.
The categories that actually matter for a first server
Over a hundred categories, and yet nearly everyone's first server converges on the same seven or eight. That convergence is information — it is thousands of people independently discovering which self-hosted apps deliver value on day one. We maintain the full awesome-selfhosted dataset as a searchable, browsable directory with live GitHub stars and categories if you want to explore the whole map; what follows is the curated "start here" cut.
Media. A media server is the classic gateway drug because the payoff is immediate and visible: your movies, shows, and music on every device, no subscription. Jellyfin is the free-software default — no account, no feature paywall, and hardware transcoding on a modest box handles most households.
Photos. This is the category where self-hosting graduated from hobby to genuine Google Photos replacement. Immich has been the fastest-moving project in the entire self-hosted space for the last few years: automatic mobile backup, face recognition, and search that runs entirely on your hardware. It earns a slot on server #1 because photos are the data people actually care about losing.
Files and sync. Your Dropbox replacement. Nextcloud is the do-everything answer — files, calendar, contacts, sharing links — at the cost of being a large PHP platform to run. If you only want fast, reliable file sync, Seafile is leaner, and Syncthing skips the server-centric model entirely by syncing devices peer-to-peer.
Passwords. The highest value-to-effort ratio in self-hosting. Vaultwarden reimplements the Bitwarden server in Rust, runs in a container with a tiny memory footprint, and works with every official Bitwarden client. You get a full-featured password manager for your whole family for the cost of one small container.
Documents. The sleeper hit. Paperless-ngx ingests scans and PDFs, OCRs them, tags them, and makes a decade of receipts, contracts, and letters full-text searchable. Nobody thinks they need it until the first time they find a tax document in four seconds.
Automation. Once you run more than three services, you want them talking to each other. n8n is a visual workflow builder — the self-hosted answer to Zapier — that turns "when X happens, do Y" into something you can wire up in an afternoon, including glue for the AI APIs everything now wants to touch.
Monitoring. The first thing you learn running your own services is that they go down when you are not looking. Uptime Kuma gives you a status page and notifications for every service you run, takes five minutes to deploy, and is usually the second or third container people never remove.
Dashboards. Once you are running eight services, you stop remembering ports. A dashboard like Homepage or Homarr puts every service on one page, often with live status baked in. Trivial to set up, and it is the difference between a pile of containers and something that feels like your own private cloud.
The apps people actually deploy first
If you collapse a few years of "what should I self-host first?" threads into a table, it looks like this: one community default per category, and the strongest alternative for when the default's tradeoffs do not fit you.
| Category | Community default | Strongest alternative |
|---|---|---|
| Media server | Jellyfin | Plex |
| Photos | Immich | PhotoPrism |
| Passwords | Vaultwarden | Official Bitwarden server |
| Files & sync | Nextcloud | Seafile |
| Documents | Paperless-ngx | Mayan EDMS |
| Automation | n8n | Activepieces |
| Monitoring | Uptime Kuma | Gatus |
| Wiki / notes | BookStack | Wiki.js |
| RSS reader | FreshRSS | Miniflux |
| Recipes | Mealie | Tandoor |
The pattern in the alternatives column is worth noticing: it is usually a philosophical fork, not a quality gap. Plex is more polished but account-gated and increasingly commercial; Jellyfin is fully free. Miniflux is deliberately minimal where FreshRSS is featureful. Gatus is configuration-as-code where Uptime Kuma is click-to-configure. Which side of those lines you fall on says more about you than about the software.
How to choose between two candidates
When you are down to two finalists in a category, the awesome-selfhosted list has done all it can for you. Here is the method that actually settles it:
Check maintenance first, again. Compare release cadence over the last twelve months, not all-time stars. In several categories the "famous" option is coasting while the challenger ships weekly.
Try both demos. Ten minutes in a live demo tells you more than an hour of feature-matrix reading. You are not evaluating features; you are checking whether the interface thinks the way you do, because you will be living in it.
Read the issues tab, not the README. The README is marketing. Open issues sorted by most-commented tell you what actually hurts: look for how maintainers respond, whether upgrade-broke-everything threads get fixed or closed, and whether the bug that would kill your use case has been open for three years.
Prefer boring technology. Between a mature project with a five-year-old architecture and a rewrite-it-in-something-shiny newcomer, the boring one keeps your data safer. Save your appetite for novelty for apps that do not hold anything irreplaceable.
This is also exactly why head-to-head comparison pages exist: the list will not make the call, so someone has to lay the two candidates side by side. We keep a comparison index for the matchups people actually agonize over — Jellyfin vs Plex and Immich vs PhotoPrism being the two most contested — with stars, licenses, and tradeoffs in one place instead of scattered across a dozen Reddit threads.
What you need to actually start
Less than you think. Hardware: any of an old PC or laptop, a Raspberry Pi, a used mini PC (the perennial community favorite, often under a hundred dollars), or a cheap VPS if you would rather rent than own. Eight gigabytes of RAM comfortably runs everything in the table above except heavy media transcoding.
Software: install Docker and run everything with Docker Compose. Nearly every project above publishes a Compose file; one docker compose up -d per app, and upgrades are a pull and a restart. Resist the urge to start with Kubernetes — that is a second hobby, not a requirement.
Access: do not open ports to the internet on day one. Install Tailscale on the server and your devices and everything is reachable privately with zero exposed surface. When you later want real public URLs, put a reverse proxy — Caddy or Nginx Proxy Manager — in front with automatic HTTPS. That is the entire stack: box, Docker Compose, Tailscale or a reverse proxy. Everything else is optional.
FAQ
What are some good self-hosting ideas?
Start with the categories that replace a subscription or protect data you care about: photo backup (Immich), password management (Vaultwarden), media streaming (Jellyfin), file sync (Nextcloud or Syncthing), and document archiving (Paperless-ngx). After those, popular second-wave ideas are a network-wide ad blocker (Pi-hole or AdGuard Home), an RSS reader (FreshRSS), a recipe manager (Mealie), workflow automation (n8n), and a wiki for your own documentation (BookStack). The best ideas are the ones that replace something you already pay for or already worry about losing.
What exactly does "self-hosted" mean?
Self-hosted software is software you run on hardware you control — a home server, an old PC, a Raspberry Pi, or a rented VPS — instead of using a company's hosted version. You get the same kind of service (file sync, photo backup, chat), but the data lives on your machine, there is no subscription, and no vendor can change the terms, mine the data, or shut the product down. The trade is that you become the operator: updates, backups, and uptime are your job.
What is the best self-hosted messaging app?
For team chat in the Slack mold, Mattermost and Rocket.Chat are the two mature options, with Mattermost generally regarded as the safer default. For personal and community messaging, a Matrix server (typically Synapse, with Element as the client) is the most credible self-hosted answer, with real end-to-end encryption and federation, at the cost of being one of the more demanding things on this page to run well. If you just want family chat without SaaS, Matrix is the answer; if you want Slack without Slack, start with Mattermost.
What are some awesome self-hosted apps?
The consensus picks by category: Jellyfin for media, Immich for photos, Vaultwarden for passwords, Nextcloud for files, Paperless-ngx for documents, n8n for automation, Uptime Kuma for monitoring, BookStack for wikis, FreshRSS for feeds, and Mealie for recipes. Beyond those, Home Assistant (home automation) and Pi-hole (DNS ad blocking) are two of the most-deployed self-hosted projects in existence and belong on any shortlist, even though they tend to live on their own dedicated devices.
Last updated: August 2026.
Last updated: 2026-08-28