This is the eleventh issue of The Starlet List. If you want to prompt your open source project on star-history.com for free, please check out our announcement.
libSQL is an Open Source and Open Contribution fork of SQLite. Unbeknownst to many, SQLite is developed without an OSS license (public domain), with a small set of developers that very rarely take external contributions. In their own words, the project is "Open Source, not Open Contribution".
libSQL
libSQL builds on the solid foundation of SQLite and adds things like:
- better support for schema changes,
- native replication,
- HTTP-based protocol for serverless environments,
- A server implementation.
- And automatic backups to object stores.
libSQL was created and is maintained by the team behind Turso, but it has a long tail of contributors and is growing in popularity rapidly:
Using libSQL
Using libSQL is easy. For example, in TypeScript:
Start by installing the SDK:
$ npm install @libsql/client
then import libSQL:
import { createClient } from "@libsql/client"
create the client:
const client = createClient({
url: "file:foo.db"
})
Alternatively, if are connecting to libsql-server:
const client = createClient({
url: "http://server:port"
authToken: "token"
});
And start issuing queries:
try {
const rs = await client.execute("select * from example_users")
} catch (e) {
console.error(e)
}
What's coming
We are looking into supporting libSQL in more languages, improving the server memory footprint and multitenant abilities, and more. Your contribution is welcome!