Sobre o projeto
RxDB (Banco de Dados Reativo) é um banco de dados NoSQL local-first para aplicativos JavaScript. Ele é reativo: além de consultar o estado atual, os aplicativos podem se inscrever em mudanças no resultado de uma consulta ou até mesmo em um único campo de um documento, o que o projeto apresenta como útil para aplicativos em tempo real e orientados por interface do usuário.
O banco de dados é construído em torno de uma interface de armazenamento, de modo que o mecanismo de armazenamento subjacente pode ser trocado. As opções de armazenamento documentadas incluem LocalStorage, IndexedDB, OPFS, LokiJS, Dexie.js, in-memory, SQLite, execução dentro de um WebWorker, FoundationDB e DenoKV. Assim, o mesmo código de banco de dados pode ser reutilizado em diferentes ambientes. Os runtimes JavaScript suportados listados no README incluem navegadores, Node.js, React Native, Capacitor, NativeScript, Flutter e Electron.
Para replicação, o RxDB fornece um Mecanismo de Sincronização destinado a trabalhar com infraestrutura existente, em vez de um banco de dados de nuvem ou backend específico. O protocolo é descrito como implementável por meio de três endpoints HTTP, e plugins prontos para produção são listados para GraphQL, CouchDB, WebSocket, WebRTC (P2P), Supabase, Firestore, NATS e Google Drive.
O conjunto de recursos inclui logging, anexos, uma camada ORM, tratamento de conflitos, middleware, sinais, integração com TanStack DB, estado reativo, backup, replicação, um componente de servidor, storages, documentos locais, validação de esquema, compressão de chave, migração de esquema, criptografia, suporte a CRDT e população de documentos referenciados. A instalação é feita via npm (rxdb e rxjs). O README mostra um guia de início rápido que cria um banco de dados com um armazenamento, adiciona uma coleção com um esquema JSON, insere um documento, executa uma consulta com exec() e observa uma consulta por meio de um observable.
Documentação, tutoriais e projetos de exemplo estão hospedados em rxdb.info e no diretório examples do repositório. O projeto também menciona plugins premium disponíveis para compra e suporte à comunidade por meio do Discord, Twitter e LinkedIn. A primeira versão do RxDB foi em 2018, de acordo com o README.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.