Repolode
dexie

dexie/Dexie.js

Um wrapper minimalista em TypeScript para o IndexedDB, o banco de dados integrado aos navegadores, com uma API de consultas mais simples.

Estrelas
14,658
Forks
719
Issues abertas
584
Último commit
anteontem

O que é?

O Dexie.js encapsula o IndexedDB, o banco de dados padrão do lado do cliente integrado a todos os navegadores modernos, e facilita a definição de tabelas, a gravação de dados e a execução de consultas. Os esquemas são declarados com uma sintaxe curta e versionada, e as consultas usam uma API encadeável que oferece suporte a índices, intervalos, filtros e operações em lote.

A biblioteca contorna bugs de várias implementações do IndexedDB para oferecer um comportamento mais consistente entre navegadores. Ela funciona em apps web puros e PWAs, além de poder ser usada em apps desktop com Electron e em apps iOS e Android baseados em Capacitor. Os typings estão incluídos, e a biblioteca pode ser carregada via npm ou por uma tag script.

Para sincronização em tempo real, autenticação e colaboração, o projeto oferece o Dexie Cloud como um addon separado, que pode ser usado com um serviço hospedado ou em self-hosting.

Recursos principais

  • 01API de consultas encadeável com índices, intervalos e filtros em tabelas do IndexedDB.
  • 02Declaração de esquemas versionados usando uma sintaxe concisa em string.
  • 03Operações em lote, como bulkPut e bulkAdd, para gravações mais rápidas.
  • 04Contorna bugs específicos dos navegadores no IndexedDB para oferecer um comportamento mais estável.
  • 05Compatível com navegadores, Electron e apps Capacitor, com typings do TypeScript incluídos.
  • 06Addon opcional Dexie Cloud para sincronização e autenticação.

Casos de uso

  • Criar PWAs que funcionam offline e armazenam dados localmente no navegador.
  • Armazenar em cache respostas de API ou dados do usuário no cliente para reduzir as idas e voltas à rede.
  • Armazenar dados do app em um app desktop com Electron ou em um app móvel com Capacitor.
  • Adicionar sincronização local-first a um app web existente com o Dexie Cloud.

Início rápido

  1. 1

    Instale o Dexie via npm

    npm install dexie
  2. 2

    Declare um banco de dados e uma tabela e, em seguida, faça consultas no código do seu app (consulte o exemplo Hello World no README)

Antes de usar

  • O Dexie encapsula o IndexedDB, por isso só funciona em ambientes semelhantes a navegadores, como navegadores, Electron ou Capacitor.

Em coleções

Tópicos

Perguntas frequentes

O que é Dexie.js?
Um wrapper minimalista em TypeScript para o IndexedDB, o banco de dados integrado aos navegadores, com uma API de consultas mais simples. O Dexie.js encapsula o IndexedDB, o banco de dados padrão do lado do cliente integrado a todos os navegadores modernos, e facilita a definição de tabelas, a gravação de dados e a execução de consultas. Os esquemas são declarados com uma sintaxe curta e versionada, e as consultas usam uma API encadeável que oferece suporte a índices, intervalos, filtros e operações em lote.
Dexie.js é gratuito? Qual é a licença?
Dexie.js é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
Dexie.js ainda é mantido?
Manutenção ativa. O último commit de Dexie.js foi em 21 de out. de 2026.
Para que posso usar Dexie.js?
Criar PWAs que funcionam offline e armazenam dados localmente no navegador. Armazenar em cache respostas de API ou dados do usuário no cliente para reduzir as idas e voltas à rede. Armazenar dados do app em um app desktop com Electron ou em um app móvel com Capacitor. Adicionar sincronização local-first a um app web existente com o Dexie Cloud.
Como instalar Dexie.js?
Instale o Dexie via npm: npm install dexie Declare um banco de dados e uma tabela e, em seguida, faça consultas no código do seu app (consulte o exemplo Hello World no README)
Onde consigo Dexie.js?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/dexie/Dexie.js

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

Projetos relacionados