Novità: automazioni a flusso, dashboard e viste SQL

Il database collaborativoin cui ogni tabella èuna vera tabella PostgreSQL.

La semplicità di un foglio di calcolo condiviso — griglie, viste, moduli, permessi — e dati che vivono in tabelle tipizzate e con nomi leggibili. Il tuo team lavora nell’interfaccia; i tuoi script, i tuoi strumenti di BI, i tuoi agenti IA e psql leggono le stesse righe.

$ docker compose up -d
  • Self-hosted
  • AGPL-3.0
  • API REST & server MCP
L’interfaccia, per davvero

Tutto ciò che il tuo team si aspetta da un foglio di calcolo condiviso.

basedb — griglia: Una griglia che scrive in una vera tabella — e campi calcolati: una durata con una formula, la città del cliente con una ricerca, il numero di attività con un conteggio.
Una griglia che scrive in una vera tabella — e campi calcolati: una durata con una formula, la città del cliente con una ricerca, il numero di attività con un conteggio.
PostgreSQL, senza traduzioni

Una griglia per il team, una vera tabella per i tuoi strumenti.

Nessun modello generico, nessun JSON tuttofare, nessun field_1837: un database è uno schema, una tabella è una tabella, un campo è una colonna tipizzata, con un nome leggibile.

  • Tipi nativi: text, numeric, date, timestamptz, boolean — e vere chiavi esterne per le relazioni.
  • Vincoli garantiti dal database: selezioni singole come CHECK, indirizzi web ed email verificati, relazioni come FOREIGN KEY.
  • Formule calcolate da PostgreSQL: JOURS([Fin]; [Début]) diventa una colonna generata, che psql legge come le altre.
  • L’SQL diretto resta consentito — e persino lui finisce in cronologia, tramite trigger.
  • Query e viste SQL nell’interfaccia: query salvate sotto le tabelle, per sé o per il team, e vere viste PostgreSQL sistemate tra di esse, che anche psql legge.
  • Rinominare non significa rompere: il vecchio nome resta servito da un alias di compatibilità, il tempo di migrare le tue query.
Interfaccia Nuovo campo · Opportunità
Obbligatorio IA
PostgreSQL b_t4z56fq_ventes.opportunites
ALTER TABLE b_t4z56fq_ventes.opportunites
  ADD COLUMN montant numeric(38,10);
COMMENT ON COLUMN …opportunites.montant
  IS 'Importo del contratto IVA esclusa';
basedb=> \d opportunites
nomtext
statuttext
montantnumeric(38,10)
echeancedate
clients_iduuid → clients
Automatizzare

Automazioni a flusso, l’IA a ogni passaggio.

Quando una riga cambia, a orario fisso o con un clic: un editor a grafo concatena i passaggi, e ogni esecuzione si rilegge sul flusso.

  • Un flusso leggibile: il trigger, poi ogni passaggio in una scheda; un + su un collegamento aggiunge un passaggio in quel punto.
  • Cercare, decidere, scrivere: trovare una riga, prendere un ramo o un altro in base a delle condizioni, modificare, creare, avvisare, chiamare un webhook, scrivere su Slack.
  • Chiedi all’IA in un passaggio: un’istruzione che cita la riga, una risposta letta come testo, numero, data o scelta, che i passaggi successivi riutilizzano.
  • Il Copilot propone un’intera automazione a partire da una frase, o spiega perché un’esecuzione non è riuscita — nulla viene salvato senza di te.
  • Con i permessi di chi l’ha scritta, e in cronologia come qualsiasi altra scrittura.
basedb — l’automazione «Progetto consegnato» nell’editor a flusso: quando un’attività è fatta, annotare l’ora, cercare cosa resta del progetto, prendere il ramo «Altrimenti», chiedere all’IA la nota di chiusura, poi consegnare il progetto; a destra, le sue ultime esecuzioni, passaggio per passaggio.
Analizzare

Dashboard senza lasciare le tue tabelle.

Domande poste con il mouse o in SQL, quindici visualizzazioni, filtri comuni — ognuno le legge con i propri permessi.

  • Domande: una tabella, i suoi join, filtri e misure per giorno, settimana, mese o anno — oppure SQL in sola lettura.
  • Quindici visualizzazioni: numero, tendenza, avanzamento, indicatore, barre, linee, torta, imbuto, tabella pivot, mappa…
  • Esplorare con un clic: un punto apre le sue righe, o un periodo più fine.
  • Filtri comuni che controllano una, più o tutte le schede.
  • Condividere tramite un link, pubblico o riservato ai membri, e incorporare in un altro sito.
basedb — una dashboard: tendenza del mese, obiettivo di incasso, fatturato per mese, sentiment delle recensioni, sotto filtri di periodo e di cliente.
Collaborare senza aprire tutto

Permessi fino al campo, una cronologia senza buchi.

I permessi si concedono ai gruppi, su un progetto, un database o una tabella, e scendono su tutto ciò che sta sotto. Una colonna sensibile può essere nascosta a un gruppo, o resa non modificabile per lui.

  • Quattro livelli: Nessun accesso, Lettura, Modifica, Gestione — cumulativi da un gruppo all’altro.
  • Anche l’SQL segue i tuoi permessi: nell’interfaccia, una query vede solo le tabelle e i campi a cui hai accesso — ed è PostgreSQL ad applicarlo.
  • Ogni scrittura viene catturata nella sua transazione: interfaccia, API, agente, modulo pubblico o SQL diretto.
  • Una modifica si annulla, una riga eliminata si ripristina, e anche un database eliminato.
  • L’amministrazione chiede conferma: cambiare un permesso richiede di aver ridigitato la password negli ultimi cinque minuti.
AmministratoriCommercialiSupporto
Progetto principale Lettura
Vendite Modifica
Opportunità ereditato Modifica
Clienti ereditato Modifica
Supporto ereditato Lettura
Campo «Margine»
>_

Sessione SQL diretta ha modificato «Migrazione ERP»

02:46 · connessione locale · psql

Importo: 125.000 → 130.000

↶ Annulla
▣

Modulo «Richiesta di preventivo» ha creato «Rifacimento dell’intranet»

risposta pubblica · pubblicato da Camille
API REST · MCP · webhook

I tuoi agenti IA accedono ai dati, non alle chiavi di casa.

Il server MCP dà quindici strumenti agli agenti; l’API REST, gli stessi dati ai tuoi programmi. Un unico punto di controllo dei permessi, gli stessi log.

  • Un token per tutto il database, produzione e collaudo compresi, in sola lettura per impostazione predefinita, mai con più permessi della persona che l’ha creato.
  • Un agente elimina solo con il tuo consenso, una riga alla volta, e non cambia la struttura: la propone, una persona approva.
  • Una documentazione generata per ogni database, filtrata in base ai tuoi permessi, con la sua specifica OpenAPI 3.1.
  • Webhook firmati, ordinati e ritentati a ogni scrittura.
✦ Agente connesso tramite MCP · token «Vendite»
Quante opportunità sono in trattativa, e per quale importo?
list_records opportunites · statut = Trattativa
Due opportunità, 182.000 € in totale: Migrazione ERP (130.000 €) e Monitoraggio flotta (52.000 €).
Aggiungi un campo «Probabilità» in percentuale.
propose_add_field opportunites · Probabilità · number
È una proposta: una persona del team deve approvarla in basedb.
Proposta scade tra 23 h

Aggiungere il campo «Probabilità» (Numero) a Opportunità

Proposta dall’agente · token «Vendite»

Rifiuta Approva
E tutto il resto

Ciò che ci si aspetta da uno strumento di team, senza rinunciare a PostgreSQL.

Ogni funzione scrive nelle stesse tabelle, con gli stessi permessi, nella stessa cronologia.

Dieci viste sulle stesse righe

Collaborative per tutto il team, o personali solo per te: ognuno sceglie il proprio modo di leggere, nessuno copia i dati.

GrigliaKanbanCalendarioSequenza temporaleGalleriaElencoMappaModuloQuestionarioQuiz

Moduli condivisi

Un link pubblico, o riservato ai membri connessi. Rispondere non dà alcun permesso sulla tabella.

Scopri di più →

Ambienti

Un database, più varianti. Confronta la struttura, migra dall’una all’altra, sincronizza le righe.

ProduzioneCollaudoSviluppo
Scopri di più →

Lavorare insieme

Le scritture degli altri arrivano in tempo reale, vedi chi guarda quale riga, e se ne discute proprio lì: commenti, menzioni, notifiche. Ctrl+Z annulla l’ultima scrittura, e rifiuta piuttosto che sovrascrivere il lavoro di un altro.

Tempo realePresenzaCommentiMenzioniCtrl+Z
Scopri di più →

L’IA nella griglia

Un campo compilato da un modello a partire dalle altre colonne, e un Copilot che propone filtri, query e colonne, applicati con un clic. OpenAI, Anthropic, Mistral, o un modello eseguito sul tuo computer.

Riassumi {{Notes}} in una frase

Relazioni e formule

Vere chiavi esterne, formule in francese o in inglese calcolate da PostgreSQL, e ricerche, aggregazioni e conteggi attraverso le relazioni.

ROUND([Montant HT] * (1 + [Taux de TVA]), 2)

Testo formattato e variabili

Un editor visuale per il testo formattato, sanificato in scrittura; e in qualsiasi testo lungo, {{Ville}} si legge con il valore della riga.

Consegna il {{Date}} a {{Ville}}

Viste condivise

Una vista in sola lettura tramite un link, incorporabile in un altro sito; un calendario diventa un feed per la tua agenda.

Tabelle sincronizzate

Una tabella tenuta aggiornata da un CSV online, un calendario, o la vista condivisa di un altro basedb.

Modelli di database

Dieci modelli pronti all’uso, un database descritto in una frase all’IA, e il tuo salvato come modello.

File e immagini

Sul disco dell’host o in uno storage compatibile S3: AWS, Scaleway, OVH, Cloudflare R2, Garage, MinIO…

Importazione Excel, CSV e JSON

Trascina un file: l’importazione indovina i tipi, crea la tabella o completa una tabella esistente, e indica riga per riga cosa viene rifiutato.

Account e inviti

Ognuno crea il proprio account e i propri progetti, e invita tramite un link in Lettura, Modifica o Gestione; accesso con password, Google, Microsoft o qualsiasi fornitore OpenID Connect.

Webhook

Ogni scrittura può avvisare un altro sistema: payload firmati, consegnati in ordine, ritentati.

Impostazioni personali

La tua lingua, il tuo tema, l’ordine delle date, le tue notifiche, le tue sessioni e i tuoi token, in un unico posto.

Nella tua lingua

L’interfaccia usa la lingua del browser, tra venti disponibili; ognuno può cambiarla nelle proprie impostazioni.

Self-hosted

I tuoi dati restano a casa tua.

basedb è un software libero (AGPL-3.0): un’unica immagine, un database PostgreSQL, e basta — nessun servizio di terze parti imposto, nessuna telemetria. Fanne il backup con pg_dump, leggilo con qualsiasi client PostgreSQL.

  • db PostgreSQL 16, i tuoi dati
  • basedb L’interfaccia, l’API REST e il server MCP, su un’unica porta
  • proxy Caddy, HTTPS automatico (opzionale)
  1. 1

    Scarica basedb

    git clone https://github.com/eodia/basedb.git
    cd basedb && cp .env.example .env
  2. 2

    Due segreti in .env

    POSTGRES_PASSWORD=una-password-robusta
    # openssl rand -base64 32
    BASEDB_ENCRYPTION_KEY=…
  3. 3

    Avvia

    docker compose up -d
    # poi http://localhost:3000: crea il tuo account
Domande frequenti

Quello che ci chiedono spesso.

Un’altra domanda? La documentazione ha di sicuro la risposta.

In cosa basedb è diverso dagli altri database collaborativi?

Nel luogo in cui vivono i dati. Dove altri sistemano le tue righe in un modello generico (colonne numerate, documenti JSON), basedb crea una vera tabella PostgreSQL per ogni tabella, una vera colonna tipizzata per ogni campo, con nomi leggibili. I tuoi dati restano utilizzabili anche senza basedb.

Posso scrivere direttamente in SQL nelle tabelle?

Sì. I vincoli (tipi, obbligatorietà, selezioni singole, chiavi esterne) sono garantiti da PostgreSQL stesso, e un trigger registra in cronologia persino le scritture fatte in SQL diretto, con la sessione che le ha fatte. La console SQL dell’interfaccia e psql leggono le stesse tabelle; nell’interfaccia, ognuno scrive SQL con i propri permessi, salva le sue query e, se gestisce il database, ne ricava vere viste PostgreSQL.

Cosa viene inviato a un fornitore di IA?

Nulla finché non hai configurato un fornitore. Dopo, per le bozze di struttura e il Copilot, per impostazione predefinita vengono inviate solo la struttura e la tua frase; la lettura dei dati da parte del Copilot è una casella da spuntare, per conversazione. Un modello di database chiesto all’IA invia solo la tua frase. Un campo IA invia le colonne citate dalla sua istruzione, dopo un consenso esplicito.

Si può lavorare in più persone sulla stessa tabella?

Sì. Le scritture degli altri compaiono senza ricaricare, con il loro volto sulla tabella o sulla riga che stanno guardando. Si commenta una riga, si menziona qualcuno con @, la campanella avvisa. E Ctrl+Z annulla solo le tue scritture: rifiuta piuttosto che sovrascrivere ciò che un altro ha cambiato nel frattempo.

In quali lingue?

Venti: francese, inglese, tedesco, spagnolo, italiano, portoghese del Brasile, olandese, polacco, ceco, svedese, danese, norvegese, finlandese, rumeno, ungherese, turco, ucraino, giapponese, cinese semplificato e coreano. L’interfaccia usa la lingua del browser, e ognuno la cambia nelle proprie impostazioni; questo sito e la documentazione esistono nelle stesse lingue.

Come si collega un agente IA?

Tramite il server MCP, con un token di integrazione limitato a un database, in sola lettura per impostazione predefinita. Un agente legge, crea e modifica righe secondo i suoi permessi — e ne elimina, una alla volta, se il suo token è stato creato per questo; non cambia la struttura: la propone, e una persona approva.

Quale versione di PostgreSQL serve?

PostgreSQL 16 o più recente, con le estensioni pg_trgm e unaccent (disponibili nell’immagine ufficiale). Il docker-compose fornito avvia un PostgreSQL 16; puoi anche far puntare DATABASE_URL al tuo server.

È pronto per la produzione?

basedb è in sviluppo attivo: il nucleo, l’API, il server MCP e l’interfaccia funzionano e sono coperti da oltre mille test, ma alcune funzioni devono ancora arrivare (vedi la roadmap). Provalo, e fai il backup del tuo database come di qualsiasi database PostgreSQL.

Con quale licenza?

AGPL-3.0-or-later. Puoi usarlo, modificarlo e ospitarlo liberamente; se offri una versione modificata come servizio, ne condividi i sorgenti.

I tuoi dati meritano vere tabelle.

Installa basedb in pochi minuti, invita il tuo team e mantieni il controllo su ogni riga.