My Server

12/24/2024

My server is basically just the previous iteration of my main PC, with a bunch of hard drives shoved in it and sitting on top of my desk in my room at my parent’s house since it has a symmetric gigabit link.

Generally when setting up a new service I create a folder in my configs directory which holds any config, data, and a docker-compose.yml. I’ll then pick a random port, and pass that through to the container, then I set up a subdomain in Cloudflare, add it to my reverse proxy and easy-peasy. If it’s something private, I’ll put it behind Authentik, which is ~10 lines of config in Caddy, and about 30 seconds in the Authentik GUI.

External-Facing

This Website

This website is made in SvelteKit and served by Bun, nice and simple. Posts are written using MDsveX.

My Professional Portfolio

This website is mainly targeted at other nerds, and has more raw technical content, while my portfolio is targeted at hiring managers and other non-technical people. It’s much more professional looking and serves as a CV mostly. It’s written in Astro and also served by Bun.

Mail Server

I’ve been self-hosting my mail for years now, and the current iteration is hosted by the wonderful Mailu.

My Second Year Software Engineering Project

A React CRUD app I made in second year with a team of five for a local charity farm. You can read more about it here.

MurraxCoin

When I was 16 crypto was the next big thing and I wanted to learn about it. I decided to jump in the deep end and made my own cryptocurrency from scratch (using existing cryptographic libraries, and websockets, but nothing above that). Me and a few friends used to mess around with it and trade it for favours, but it isn’t used anymore. However I still host a node because why not.

Bluesky PDS

I run my own PDS for Bluesky, right now it just has an alt did:web account and not my main, but I might move my main over eventually.

File transfer

Plik is a nice little self-hosted WeTransfer alternative I use every now and then to share files.

Saferoute

A little hackathon project I made with a few friends. Pick any two locations in Bristol, UK and it’ll show you both the fastest and the safest walking route. Calculated using crime and street light data.

Umami

Umami is a self-hosted analytics platform. It lets me collect very basic analytics on my websites without sending any user data to an external service.

Internal-Facing

Docker Registry

Hosts some private Docker images, mainly for my Discord bot.

Plex

A self-hosted streaming platform. You provide it folders of media and it’ll present a Netflix/Disney+/All-the-rest like interface you can access anywhere. This way once I’ve bought physical media for a show/movie I like, I can access it anywhere.

Authentik

A self-hosted authentication provider. This allows me to run my own SSO and login to most my services with one login.

Kubernetes

I run my own single-node cluster using Microk8s, which runs my Discord bot. You can read more about why I do that here, but basically it boils down to helping me learn more about distributed systems.

Anki Sync

Anki is a program for managing flashcards, you can sync your progress between devices by connecting to their sync node or your own. I run my own because that’s the kind of person I am.

Anytype

Similar to Notion, designed for note-taking and to be a general knowledge-base. It uses graphs to represent relations which is interesting. It’s local-first but can be synced between devices using their sync network, or you can run your own (which is annoyingly complicated).

ArchiveBox

A self-hosted website archiving tool so I can make sure I don’t lose websites I care about.

Home Assistant

Ok technically this runs on a different server (a used thin client) in my house, but I’ll just put it in here too. It’s a self-hosted smart home platform, with wonderful automation capabilities. I use it to turn on/off my lights/desk lamp automatically depending on motion and light level.

FreshRSS

An RSS reader that I always forget to check.

Grist

A relational spreadsheet alternative, hard to get your head around but pretty cool.

Immich

Google Photos alternative, includes backup, search, machine learning, etc. Very nice.

Kopia

Backs up my file storage, config dir, and /etc/ to my thin client server.

Ladder

Paywall bypasser.

Seafile

Google Drive alternative.

Syncthing

Syncs most of my files live between my laptop, PC and server (where they’re backed up from). Let’s me work on either device like they’re the same.

Vikunka

To-do list, I have it open in my new tab page so I don’t forget about it.