ADR-002 : SQLite + Drizzle plutôt que Postgres

ADR-002 : SQLite + Drizzle plutôt que Postgres

Date : 2026 (initial setup) — Statut : accepté

Contexte

Stockage relationnel pour : users, games, questions, feedbacks. Volume attendu : <10K users, <100K questions sur la durée de vie du projet (usage perso + qq invités potentiels).

Options : Postgres (standard, riche), MySQL/MariaDB, SQLite (local, simple).

Décision

SQLite (via better-sqlite3) + Drizzle ORM.

Raisons :

Conséquences

Bonnes

Mauvaises

Alternative envisagée

Migration future possible

Si on doit scaler :

  1. Drizzle supporte Postgres natif → migrer le schéma src/schema.ts (changer le driver)
  2. Migrations SQL traduites manuellement (SQLite et Postgres ont des syntaxes proches mais quelques diffs : INTEGER PRIMARY KEY AUTOINCREMENT vs SERIAL)
  3. Sessions in-memory → table sessions dans la même DB
  4. Container Postgres + volume + healthcheck dans docker-compose.yml

L'effort est borné : Drizzle abstrait l'essentiel. C'est faisable en 1-2 jours quand le besoin se présente.


Revision #1
Created 2026-05-10 15:19:51 UTC by thymon
Updated 2026-05-10 15:19:51 UTC by thymon