Look ma, no HTMX!
A modern, web-based SQLite database browser and query tool built for Val Town. Execute SQL queries, browse database schema, and export results with a clean, intuitive interface.
Cmd/Ctrl+Enter to run queries.
āāā backend/
ā āāā index.http.ts # Hono API server / Entry Point
āāā frontend/
ā āāā components/
ā ā āāā AppHeader.tsx # App header with title
ā ā āāā EditorSection.tsx # SQL editor with controls
ā ā āāā ErrorBoundary.tsx # Error boundary component
ā ā āāā Icons.tsx # Icon components
ā ā āāā PaginationBar.tsx # Pagination controls
ā ā āāā Table.tsx # Data table with pagination
ā ā āāā TablesList.tsx # Schema sidebar
ā ā āāā ThemeToggle.tsx # Dark mode toggle
ā āāā hooks/
ā ā āāā useCodeEditor.ts # Editor state management
ā ā āāā useDownload.ts # Export functionality
ā ā āāā useQueryExecution.ts # Query execution logic
ā ā āāā useTableSelection.ts # Table selection logic
ā āāā App.tsx # Main React application
ā āāā index.html # HTML entry point
ā āāā main.tsx # React entry point
āāā shared/
āāā exportHelpers.ts # CSV/JSON export utilities
āāā sqlHelpers.ts # SQL parsing utilities
āāā types.ts # Shared TypeScript types
SELECT * FROM [table]Cmd/Ctrl+Enter or click the "Run Query" buttonThe editor supports multiple SQL statements. It will execute the statement at
your cursor position when you press Cmd/Ctrl+Enter.
Cmd/Ctrl+Enter - Execute query at cursorReturns all tables and views in the database.
Response:
{ "tables": [{ "name": "users", "type": "table" }], "views": [{ "name": "active_users", "type": "view" }] }
Executes a SQL query.
Request:
{ "query": "SELECT * FROM users LIMIT 10" }
Response:
{ "success": true, "data": { "columns": ["id", "name", "email"], "rows": [[1, "Alice", "alice@example.com"]] } }
Downloads query results as CSV.
Downloads query results as JSON.
Table.tsxThis project was migrated from HTMX to React on November 14, 2024. See
MIGRATION_GUIDE.md for details on the migration process.