Sari la conținut

Principii

basedb a fost conceput pornind de la un document de arhitectură — șaisprezece capitole, în depozit, sub docs/architecture. Capitolul 00 stabilește douăzeci și cinci de decizii; iată spiritul lor.

O bază a utilizatorului este o schemă PostgreSQL, un tabel este un tabel, un câmp este o coloană tipizată cu nume clar. Fără EAV (entitate-atribut-valoare), fără documente JSON în care încape orice, fără nume opace. Catalogul _basedb descrie aceste obiecte; nu le înlocuiește.

Consecință voită: SQL-ul direct este o utilizare legitimă. Constrângerile sunt setate în baza de date, istoricul este captat de triggere — nimic nu presupune că scrierea trece prin aplicație.

Un singur punct de decizie asupra permisiunilor

Section titled “Un singur punct de decizie asupra permisiunilor”

Interfața, API-ul REST, serverul MCP, formularele partajate, webhook-urile: totul trece prin același punct de aplicare a permisiunilor, în nucleu. Interfața este un consumator al API-ului ca oricare altul — fără rută privată, fără token de serviciu. O resursă pe care nu o puteți vedea răspunde exact ca o resursă care nu există.

Un monorepo TypeScript: @basedb/core conține toată logica (catalog, motor DDL, permisiuni, înregistrări, istoric); apps/api (Hono), apps/mcp și apps/web (Next.js) sunt adaptoare care nu se apelează între ele. Interfața nu depinde niciodată de nucleu: vorbește HTTP, atât.

Ștergerea retrogradează, fără a distruge: un tabel șters își păstrează rândurile, lizibile în SQL sub un nume retrogradat, și se poate restaura. Redenumirea unui nume fizic păstrează numele vechi servit printr-un alias. Purjarea este o decizie de administrare, precedată de un export verificat.

PostgreSQL 16 sau mai nou și nicio dependență externă obligatorie: nici coadă de mesaje, nici cache, nici motor de căutare. Coada webhook-urilor, golirea istoricului, limitele de debit — totul încape în baza de date sau în proces.

CapitolSubiect
00Decizii structurante și registrul codurilor de eroare
01Denumire și slugificare
02Catalogul _basedb, sursa de adevăr
03Motorul DDL și migrările
04Tipuri de câmpuri și corespondența în PostgreSQL
05Permisiuni
06Ciclul de viață: redenumire, ștergere, purjare
07Istoric
08API REST și webhook-uri
09Server MCP
10Arhitectura software
11Interfață
12Integrarea AI
13Autentificare
14Medii
15Formulare partajate

basedb este software liber dezvoltat de Eodia, un studio de software AI-nativ.