Tech

We want to keep to a minimum set of technologies as we want to know them well and need to support them.

Programming languages

JS

We will use plain javascript for all of our code, we may look to use JSDoc @typedef comments (see No Compile) to get type hints at the time of writing but that is it.

SQL

We will need to use SQL to interrogate our data.

Storage

TimescaleDB

For when we want to store lots of logging style data or just lots of data over time we will use TimescaleDB as it is built on PostgreSQL.

PostgreSQL

We will use postgres for everything, we can install an instance on a server to start off with (using a local socket for connectivity) and then use a shared one if needed, we will use this in as many cases as possible.

It supports JSON so we can use it as a document store and we can use tables as queues if needed (see Solid cable for the rough idea).

We will use african names for our databases e.g. Omolara, Deka etc.

Firewall

Cloudflare

We will use cloudflare to protect our systems from attack and to keep things running in a fast way.

Hosting

We will use Hostinger for basic sites and bare metal servers from Hetzner for more serious applications.

We will use Knight names for our bare metal servers e.g. Lancelot, Hotspur etc.

VPN

Cloudflare?

Websockets

We will keep things in the postgres sphere and use postgres-websockets to handle socket communication.