Self Hosted Software

Self Hosting any software means freedom, flexibility and soverignity.

The first step before self hosting software is to own your own slice of the internet with a static website . Reclaiming the independent web starts with self hosting your own site! The natural next step is is to self-host software on your own LINUX virtual private server . You can in theory use static hosting and still self host for the fun of the community.

Here’s a list of awesome open source Software I currently use and self host. Most of them on either a raspberry PI or a $5/month Linux VPS at Linode .

Table Of Contents

My 3 Requirements

I’ve got 3 requirements when choosing to self host something. The software must be a self contained , minimal configuration, single binary with a local DB. Most projects fail to meet these requirements thus from my perpective, they are not easy to selfhost.

  1. Single binary executable - everything in it including UI - This is mostly true for Golang, Rust and sometimes with C projects.
  2. Uses SQLite as a database (Or badgerdb, boltdb, local file DB) - Easy to backup, easy to review data in database and to move to other hosts.
  3. No external dependencies or not requiring to install/setup anything else. Just SCP, setup systemd service, edit a minimal config file and I’m done with. I can leave it on for years without bothering on a $5/month Linux VPS .

This means tools built in python/javascript/php or whatever scripting language are usually excluded because they fail points 1. and 3. If you embed the UI in the binary, even if it has a JavaScript frontend, this will enable anyone to be able to host it. This ensures I can easily setup a systemd service. NO need for complex docker and other cloud shenanigans. I can manage my own cheap LInux VPS. . I’ve tried kubernetes, doesn’t work. You can easily scale things on a single VPS. Add multiple and use Ergo Framework for high availability and fault tolerance based on ERlang or Elixir/ERlang’s scaling features IF you really need to scale. THis means you might as well ditch your programming languages intead of creating complexity .

Self Hosted Software you can install and use right now on your linux VPS

I’ve drilled down on this list after years of experiments.

  • Vikunja - Self Hosted TODO app for tasks and planning like kanban boards, multi projects, multi user. Great Golang

  • ListMonk - Self Hosted Email Newsletter & Campaign management - I’ve used Sendy in the past but ListMonk is easier to setup & manage, it does miss some sendy features but who cares? Golang

  • Hugo - Not really self hosted, but a great and powerful static site generator. Golang

  • Fossil Source Control Management - I’ve been using fossil for years . It’s an amazing source code management system which is self contained in 1 binary, it has wiki, forum, and a plethora of other features making it suitable to host your own wiki/forum or even static website. C

  • Caddy Webserver - A simple, intuitive webserver and reverse proxy with automatic HTTPS. After struggling with apache, nginx and haproxy i think caddy is great - After all, most websites/people don’t need huge compelx systems. It has

  • Mox - SMTP, IMAP, Mailsever Golang - I used to host my own mail servers and wrote why you shouldn’t do that but this all changed with mox. It’s easy to setup, and it’s a single binary taking care of your mail needs. Golang - (Just experimenting with this one since december 2024)

  • Ergo IRCd - Internet Relay Chat Server used for ZenDenPen - Golang

  • Collie - RSS Feed - Because social media sucks I like your site? I’m gonna subscribe RUST

  • [SQLITE] - THe most deployed, most used database in the world. C

  • GoatCounter - GOlang based analytics golang

  • Pocketbase - A Backend as a service (alternative to suprabase) - Used for some things where I need a fast API :) golang

  • remark42 - Self hosted Privacy-focused lightweight commenting engine for static sites, blogs, internal systems, etc golang

  • Apache answer - A community Forum and Q&A system - golang

  • Syncthing - FIle sharing/sync-ing between multiple computers golang

  • SystemD - No docker, no containerd, no podman, no kubernetes - Simple LINUX builtin system service restart with systemd. It’s all you need. C

  • FIlebrowser - A simple cloud system - Multi user, share , automations with running commands upon upload, after editing, saving etc.. can create complex things easily. golang

  • Yarr RSS Feed reader - Simple and beautiful web interface, folders, stars/favorites, ability to READ IN IT (no need to go to website) which can increase privacy

  • Other Self Hosted software including LinSublim which I’ve built using Golang

Not really using anymore

I could cal this list Waiting for them to become better. Tools I’ve tried to use and no longer use

  • Memos - Note taking software golang
  • Commento - Golang based comment software, using remark42 instead golang

The list would be pretty big but i’m listing only those which met my 3 requirements.

I also use other software but that’s mostly local based. I’ve used plenty of other self hosted tools/apps but gave up on them.

You might have noticed that most of the apps are based on the Go Programming language . I’ve always used to want to have all software in 1 programming language in the past that failed, but with GOLANG/

Want something else?

Here’s a huge list of self hosted software you can experiment with.

Have a happy enjoyable winter season, christmas and newyear!

Subscribe to my Newsletter

Receive emails about Linux, Programming, Automation, Life tips & Tricks and information about projects I'm working on