Repolode
tursodatabase

tursodatabase/libsql

Um fork open source do SQLite com contribuições abertas, que adiciona réplicas embarcadas, modo de servidor remoto e extensões ao núcleo do SQLite.

Estrelas
17,280
Forks
547
Issues abertas
466
Último commit
há 5 dias

O que é?

libSQL é um fork do SQLite mantido pela Turso. Ele preserva a API e o formato de arquivo do SQLite, permitindo usar bancos de dados e código SQLite existentes, mas adiciona recursos voltados a casos de uso para os quais o SQLite não foi originalmente projetado.

As principais adições são as réplicas embarcadas, que mantêm uma cópia replicada do banco de dados dentro de uma aplicação, e o libSQL server, que oferece acesso remoto ao SQLite de forma semelhante ao PostgreSQL ou ao MySQL. O núcleo também inclui uma extensão ALTER TABLE para alterar tipos de coluna e restrições, funções definidas pelo usuário em WebAssembly, ROWIDs aleatorizados e uma interface virtual de write-ahead log.

O projeto aceita contribuições externas, algo que os mantenedores apontam como sua principal diferença em relação ao SQLite upstream. Há drivers para TypeScript/JavaScript, Rust, Go e outras linguagens, além de um shell de linha de comando compatível com SQLite. O README observa que a reimplementação separada da Turso em Rust é onde novos recursos estão sendo desenvolvidos.

Recursos principais

  • 01Réplicas embarcadas que mantêm uma cópia replicada do banco de dados dentro da sua aplicação
  • 02libSQL server para acesso remoto ao SQLite
  • 03Extensão ALTER TABLE para alterar tipos de coluna e restrições
  • 04Funções definidas pelo usuário em WebAssembly
  • 05Drivers oficiais para TypeScript/JavaScript, Rust e Go

Casos de uso

  • Executar armazenamento compatível com SQLite com acesso remoto pela rede
  • Manter uma cópia local e replicada do banco de dados dentro de uma aplicação de edge ou cliente
  • Adicionar funções WebAssembly a aplicações baseadas em SQLite

Início rápido

  1. 1

    Compile a biblioteca C compatível com SQLite e as ferramentas

    cargo xtask build
  2. 2

    Inicie o shell SQL no diretório libsql-sqlite3

    cd libsql-sqlite3 && ./libsql

Antes de usar

  • Herdando o modelo de escritor único do SQLite, não oferece suporte a gravações simultâneas.
  • O README recomenda usar o Turso em vez disso para novos projetos, já que os novos recursos estão sendo desenvolvidos lá.

Tópicos

Perguntas frequentes

O que é libsql?
Um fork open source do SQLite com contribuições abertas, que adiciona réplicas embarcadas, modo de servidor remoto e extensões ao núcleo do SQLite. libSQL é um fork do SQLite mantido pela Turso. Ele preserva a API e o formato de arquivo do SQLite, permitindo usar bancos de dados e código SQLite existentes, mas adiciona recursos voltados a casos de uso para os quais o SQLite não foi originalmente projetado.
libsql é gratuito? Qual é a licença?
libsql é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
libsql ainda é mantido?
Manutenção ativa. O último commit de libsql foi em 17 de out. de 2026.
Para que posso usar libsql?
Executar armazenamento compatível com SQLite com acesso remoto pela rede Manter uma cópia local e replicada do banco de dados dentro de uma aplicação de edge ou cliente Adicionar funções WebAssembly a aplicações baseadas em SQLite
Como instalar libsql?
Compile a biblioteca C compatível com SQLite e as ferramentas: cargo xtask build Inicie o shell SQL no diretório libsql-sqlite3: cd libsql-sqlite3 && ./libsql
Onde consigo libsql?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/tursodatabase/libsql

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados