Stack

Jede App, die ich baue, startet vom selben Bauplan. Jede Entscheidung unten bekommt einen eigenen Text in Boring Stack.

Bereich Wahl Warum
Sprache Go Ein statisches Binary, eine Standardbibliothek, die HTTP abdeckt, und Code, der sich auch in fünf Jahren noch gleich liest
Routing net/http Der Standard-Router kann Methoden und Pfadparameter, ein Framework bringt nichts dazu
Frontend templ, htmx, Tailwind Serverseitig gerendertes HTML mit typgeprüften Templates; Interaktivität ohne zweite App in JavaScript
Datenbank SQLite Eine Datei, kein Server, schnell genug für fast alles, was ein kleines Team baut
Datenzugriff sqlx und handgeschriebenes SQL Das SQL, das man liest, ist das SQL, das läuft
Migrationen goose, eingebettet Das Binary migriert seine Datenbank beim Start selbst
Tests Echte In-Memory-SQLite, keine Mocks Tests gegen eine echte Datenbank finden die Fehler, die Mocks verstecken
Entwicklung Nur Docker Ein neuer Rechner braucht Docker und sonst nichts
Hosting Ein VPS, Caddy Günstig und schnell; ein einzelner Server ist leicht zu durchschauen
Websites Hugo Statische Dateien, keine Laufzeit, nichts zu patchen. Diese Seite läuft darauf