Un explorer e visualizzatore per database SQLite (
.db,.sqlite,.sqlite3) leggero, moderno e 100% client-side, eseguito direttamente nel browser grazie a WebAssembly (sql.js). Nessun backend, nessun server e nessun dato inviato all'esterno.
- 🔒 100% Privacy & In-Memory: I tuoi file
.dbnon lasciano mai il dispositivo. L'elaborazione, le query e le modifiche avvengono interamente all'interno del browser. - 📂 Caricamento Semplice:
- Drag & Drop immediato di file
.db,.sqlite,.sqlite3. - File picker tradizionale.
- Creazione rapida di un nuovo database vuoto.
- Generazione di un database dimostrativo ("Demo DB") con tabelle relazionate già popolate.
- Drag & Drop immediato di file
- 🧭 Schema Explorer & Navigazione:
- Elenco automatico di tabelle e viste con conteggio righe in tempo reale.
- Filtro di ricerca per navigare schemi complessi.
- Visualizzatore delle istruzioni DDL (
CREATE TABLE ...) con copia rapida negli appunti.
- 📊 Visualizzazione & Manipolazione Dati (CRUD):
- Griglia dati con paginazione configurabile (25, 50, 100, 500 righe per pagina).
- Ricerca istantanea su tutti i campi della tabella.
- Aggiunta e Modifica di Record tramite form generati dinamicamente dai tipi colonna con supporto per valori
NULLe chiavi autoincrementanti. - Cancellazione righe sicura tramite
rowid. - Creazione e Drop visuale delle tabelle senza scrivere codice a mano.
- 💻 SQL Console Avanzata:
- Esecutore di query arbitrarie (
SELECT,INSERT,UPDATE,ALTER,JOIN, ecc.). - Esecuzione rapida con scorciatoia
Ctrl + Invio(oCmd + Invio). - Misurazione del tempo di esecuzione in millisecondi.
- Cronologia delle ultime query eseguite.
- Esecutore di query arbitrarie (
- 💾 Esportazione Completa:
- Esportazione del binario SQLite aggiornato (
.db) pronto per essere riutilizzato su qualsiasi applicazione desktop, server o mobile. - Esportazione delle singole tabelle in formato CSV e JSON.
- Esportazione del binario SQLite aggiornato (
- 🎨 Interfaccia Utente:
- Design curato con supporto per Dark/Light Mode.
- Icone vettoriali Lucide.
- Feedback visivo tramite toast notification e dialog di conferma.
- sql.js: Porting di SQLite in C compilato in WebAssembly (WASM).
- HTML5 & Vanilla JavaScript: Nessun framework pesante, massima reattività e zero overhead di build.
- Tailwind CSS: Styling e design responsivo.
- Lucide Icons: Set di icone pulito e scalabile.
Poiché l'applicazione è contenuta in un singolo file HTML autonomo, non richiede installazioni, configurazioni complesse o Node.js.
- Clona la repository:
git clone https://github.com/tuo-username/sqlite-studio-web.git cd sqlite-studio-web - Apri direttamente il file
index.htmlin un qualsiasi browser moderno:- Su macOS:
open index.html - Su Linux:
xdg-open index.html - Su Windows: fai doppio clic su
index.htmlo usastart index.html
- Su macOS:
Sebbene sql.js funzioni via CDN, alcuni browser restringono determinate API sui file aperti tramite protocollo file://. Puoi avviare un server web locale con una sola riga:
- Con Python 3:
python3 -m http.server 8080
- Con Node (npx):
npx serve . - Con estensioni per editor: Usa estensioni come Live Server su VS Code.
Apri quindi http://localhost:8080 nel browser.
- Aprire un database: Trascina un file
.dball'interno della finestra oppure clicca sul pulsante "Apri DB" nella barra superiore. - Esplorare una tabella: Clicca sul nome della tabella nella sidebar a sinistra.
- Modificare o aggiungere dati: Usa il pulsante "Nuovo Record" in alto a destra oppure le icone di modifica (✏️) ed eliminazione (🗑️) presenti su ciascuna riga.
- Eseguire query SQL: Clicca sulla scheda "SQL Console", digita la query e premi
Ctrl + Invio. - Salvare le modifiche: Fai clic sul pulsante verde "Salva / Esporta DB" per scaricare la versione aggiornata del file
.dbsul tuo disco locale.
sqlite-studio-web/
├── index.html # Applicazione completa (UI, logica ed engine WASM)
├── README.md # Documentazione del progetto
└── LICENSE # Licenza open-source (MIT)
I contributi sono sempre benvenuti!
- Fai un Fork del progetto.
- Crea un branch per la tua feature (
git checkout -b feature/NuovaFunzionalita). - Effettua un commit delle tue modifiche (
git commit -m 'Aggiunta nuova funzionalità'). - Esegui il push sul tuo branch (
git push origin feature/NuovaFunzionalita). - Apri una Pull Request.
Questo progetto è distribuito sotto licenza MIT. Consulta il file LICENSE per maggiori dettagli.