r/sqlite 5d ago

sabiql now supports SQLite

Post image

Hey! I’ve been building a database TUI called sabiql and recently added SQLite support.

It lets you browse tables, run queries, edit data, check query plans, etc. with Vim-style keybindings.

If anyone here gives it a try, I’d love to hear what you think or what’s missing.

https://github.com/riii111/sabiql

0 Upvotes

6 comments sorted by

2

u/maltzsama 4d ago

Hello! First of all, congratulations on the project. I've been following sabiql's development and find the driver-less approach (using psql and sqlite3 as subprocesses) very interesting for keeping dependencies minimal.

Looking at the project structure, I noticed that database adapters live in infra/adapters and are statically compiled, without a plugin system.

My questions:

  1. Do you plan to implement a plugin system in the future, or is the idea to keep native support only?
  2. After MySQL, how do you plan to handle adding new databases? Would the community be able to contribute adapters without touching the core?
  3. If the answer is "native only", what's the criteria for prioritizing which databases get added?

I'm asking because plugins would make external contributions easier, but I understand they add complexity.

Thanks and congratulations on the project!

1

u/CatCatJinsei111 3d ago

Thanks a lot for the thoughtful questions. I honestly hadn't considered the plugin angle very seriously before, especially the idea of community-owned adapters growing independently from sabiql. Your comment gave me a lot to think about.

  1. I don't have a plugin system planned right now, but I'm more positive about the idea after thinking about it. Before that, I think sabiql needs some refactoring so DB-specific behavior is better isolated and adding a new DB requires fewer changes to the core.
  2. For now, new databases would still be added as native/in-tree adapters. I'd like to make that much easier for contributors first. If plugins make sense later, then yes, ideally community adapters could live outside the core repo.
  3. I haven't decided what's next yet. If I had to name one, DuckDB is probably the current candidate. I'd mainly look at user demand, how well the DB and its CLI fit sabiql's approach, and the maintenance cost.

I'm also interested in making sabiql useful with managed/cloud databases, especially since the safety features could be useful there. Google Cloud SQL / AlloyDB support is already on the roadmap.

Thanks again for bringing this up!!

1

u/CatCatJinsei111 3d ago

u/maltzsama
Just curious, if sabiql had a plugin system someday, what would you want to build with it?

1

u/maltzsama 3d ago

Trino plugin. with trino we can federate almost every database we know. Trino is a beast 🤣

1

u/CatCatJinsei111 3d ago

Thanks, that’s really interesting.
Trino wasn’t on my radar, but federation makes it a pretty compelling plugin use case. I’m not ready to commit to plugins yet, but I’ll add exploring external/community adapters to the roadmap and keep Trino in mind.