Starlet #11 libSQL: SQLite for modern applications
LogoBlogAdd Access Token

Starlet #11 libSQL: SQLite for modern applications

Glauber Costa 2 min read

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:

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:

Star History Chart

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!