Project
Roadmap
Where SeeKi is, where it is going, and what is parked for later. Short horizons only — anything past the next version is an intention, not a promise.
Shipped — v0.1
The MVP. A single Rust binary that opens a PostgreSQL database and renders it as a spreadsheet, with no SQL surfaced to the user.
- Backend API & config (#27) — TOML config, PostgreSQL pool,
/api/tables,/api/columns,/api/rows. - Frontend scaffold & integration (#28) — Svelte 5, embedded into the binary at build time.
- Data grid & table navigation (#29) — RevoGrid, paginated rows, hatched NULL cells, Yes/No badges.
- Toolbar, column management & export (#30) — sort, search, hide/show, CSV export.
- First-run setup wizard (#31) — no-TOML-required onboarding for non-technical users.
- End-to-end QA (#32) — Playwright suite plus the
QA-CHECKLIST.mdgate, with numeric-precision and Safari-date fixes. - Logo, favicon, and brand mark refresh (#54).
In flight
Work that is actively being carved up and merged on top of v0.1.
- Documentation site. The page you are reading. Get Started, Features, Operate, Develop, API, and Project sections, all built against
/assets/css/site.css. - Release packaging. Version-bump workflow is stabilising after the last run of CI fixes. Goal: one tagged artefact per
mainpush without hand-editingVERSION. - Post-QA polish. Small, targeted fixes raised during the end-to-end pass — column dropdown focus, export error surface, setup-wizard keyboard flow.
Next up — v0.2
A single headline item and the pieces that fall out of it.
- SQLite engine. Second database backend, matching the PostgreSQL contract:
list_tables,get_columns,query_rows. Unlocks local-file workflows (Chinook, bundled reports, Airtable exports) without a running server. - New
DatabaseKind::Sqlitevariant andDatabasePoolarm — see Adding a database engine. - Setup-wizard path for Open a SQLite file — a file picker, not a connection string.
- Connection-test parity with the PostgreSQL flow: a table preview, row estimates, system-table flagging.
Ideas pile
Parked. None of these are committed to a version — they exist so the next conversation can start from something written down instead of from scratch.
- MySQL / MariaDB engine. Third backend. Mostly a mechanical follow to SQLite.
- Saved views. Remember a table's sort + hidden columns + search between runs, per connection.
- Row detail drawer. A single-row side panel that wraps long text and pretty-prints JSON columns.
- Foreign-key hop. Click a key to open the parent row in a new tab of the grid, still read-only.
- Export formats. JSON and Parquet alongside CSV, driven from the same column-aware export pipeline.
- Auth module. The
src/auth/placeholder exists for a reason — bearer-token or OIDC in front of the HTTP server for shared deployments. - Column width persistence. Survive a page reload without re-dragging.
- Query history (still no SQL surface). A read-only log of which table + sort + search a user visited, for their own reference.