3 ms·
Hi everyone, for the last couple of weeks I started to work on Soul, which a SQLite RESTful server. Basically it takes an SQLite file and create CRUD endpoints
by thevahidal 4y ago
Hi everyone,
for the last couple of weeks I started to work on Soul, which a SQLite RESTful server. Basically it takes an SQLite file and create CRUD endpoints for it.
Right now it consists of Soul CLI and Soul Studio (Which studio is at the early stages of development).
Studio is going to be GUI for soul that let's users to work with their database in a graphical way.
Eventually I want Soul to be a simple backend-as-a-service that people can use it to quickly start their ideas.
Please let me know if you have any ideas to improve Soul, or how it'll become useful for your project.
- lucasyvas 4y agoLooks awesome! I'm not sure if it would be one of your goals, but to me a killer piece of projects like this is realtime notifications. Supabase has something like this for Postgres. There are an interesting number of options for SQL via HTTP and SQL via GraphQL popping up in general - some of these might have some features worth looking into.
- thevahidal 4y agoHi Lucasycas, Thanks for your kind words. Real-time events / Websockets is definitely one of the must-have features for Soul. Right now I'm not sure how to approach it, but I welcome any contributions for it.
- simjnd 4y agoPocketBase [1] provides realtime notifications and it works great (PocketBase is a single-binary self-hosted alternative to Supabase and uses SQLite internally) [1]: https://pocketbase.io/ https://pocketbase.io/
- thevahidal 4y agoHi simjnd, Eventually Soul is following the same path that Pocketbase is going, the main difference is that Soul is written in Node.js while Pocketbase is writtern in Go. Considering the larger community of Javascript developers I decided to start Soul.
- deleted 4y ago[deleted]
- le-mark 4y agoWhat’s the story around concurrency and concurrent updates to the db file? Are all queries in a single thread or are concurrent sql statements allowed to execute? Are there any benchmarks vs Postgres for example?
- thevahidal 4y agoHi le-mark, as I mentioned Soul is really young and I just started to work on it. For now my goal is to create a decent prototype out of it and when the concept is matured enough, we can go towards performance. There's no benchmark done yet, but I invite you to talk more about the things you think is important to consider.
- ianmayo 4y agoOooh, it would be fantastic if this enabled us to use SQLite as a backend for react-admin. React-Admin is amazing, but I haven't found a REST wrapper for SQLite that works with it. Soul certainly adds the record count (which sandman2 omits). But, I see Soul doesn't support multiple specific rows (getMany).