
Construa reagir e reagir poderosos aplicativos nativos que escalam de centenas a dezenas de milhares de registros e permanecem rápidos ⚡️
| Modernôndb | |
|---|---|
| ⚡️ | Inicie seu aplicativo instantaneamente, não importa quantos dados você tenha |
| ? | Altamente escalável de centenas a dezenas de milhares de registros |
| ? | Carregado preguiçoso . Carregue apenas dados quando precisar |
| Offline-primeiro. Sincronize com seu próprio back -end | |
| Multiplataform . iOS, Android, Windows, Web e Node.js | |
| ⚛️ | Otimizado para reação. Conecte -se facilmente dados em componentes |
| ? | Framework-Agnóstico. Use a API JS para se conectar a outras estruturas da interface do usuário |
| ⏱ | Rápido. E ficando mais rápido a cada lançamento! |
| ✅ | Comprovado. Poderes nozbe desde 2017 (e muitos outros) |
| Reativo. (Opcional) API RXJS | |
| ? | Relacional. Construído na Fundação Sqlite Solid |
| Digição estática com fluxo ou texto datilografado |
O WatermelondB é uma nova maneira de lidar com os dados do usuário nos aplicativos da Web Native e React.
É otimizado para criar aplicações complexas no React Native, e o objetivo número um é o desempenho do mundo real . Em palavras simples, seu aplicativo deve ser lançado rapidamente .
Para aplicativos simples, o uso do Redux ou Mobx com um adaptador de persistência é o caminho mais fácil de percorrer. Mas quando você começa a dimensionar milhares ou dezenas de milhares de registros de banco de dados, seu aplicativo agora demorará a ser lançado (especialmente em dispositivos Android mais lentos). Carregar um banco de dados completo no JavaScript é caro!
A melancia o conserta sendo preguiçosa . Nada é carregado até que seja solicitado. E como toda a consulta é realizada diretamente no banco de dados SQLite sólido em um encadeamento nativo separado, a maioria das consultas é resolvida em um instante.
Mas, diferentemente do uso diretamente do SQLite, a melancia é totalmente observável . Portanto, sempre que você alterar um registro, toda a interface do usuário que depende dele será renderizada automaticamente. Por exemplo, a conclusão de uma tarefa em um aplicativo de tarefas renderá o componente da tarefa, a lista (para reordenar) e todos os contadores de tarefas relevantes. Saber mais .
|
| | ---- | --- | |
Bancos de dados de reação de próxima geração
(uma palestra sobre memalondb)
Exemplo rápido (super simplificado): um aplicativo com postagens e comentários.
Primeiro, você define modelos:
class Post extends Model {
@ field ( 'name' ) name
@ field ( 'body' ) body
@ children ( 'comments' ) comments
}
class Comment extends Model {
@ field ( 'body' ) body
@ field ( 'author' ) author
}Em seguida, você conecta componentes aos dados:
const Comment = ( { comment } ) => (
< View style = { styles . commentBox } >
< Text > { comment . body } — by { comment . author } </ Text >
</ View >
)
// This is how you make your app reactive!
const enhance = withObservables ( [ 'comment' ] , ( { comment } ) => ( {
comment ,
} ) )
const EnhancedComment = enhance ( Comment )E agora você pode renderizar todo o post:
const Post = ( { post , comments } ) => (
< View >
< Text > { post . name } </ Text >
< Text > Comments: </ Text >
{ comments . map ( comment =>
< EnhancedComment key = { comment . id } comment = { comment } />
) }
</ View >
)
const enhance = withObservables ( [ 'post' ] , ( { post } ) => ( {
post ,
comments : post . comments
} ) )O resultado é totalmente reativo! Sempre que uma postagem ou comentário é adicionada, alterada ou removida, os componentes certos serão renderizados automaticamente na tela. Não importa se uma mudança ocorreu em uma parte totalmente diferente do aplicativo, tudo funciona fora da caixa!














Sua empresa ou aplicativo usa ?? Abra uma solicitação de tração e adicione seu logotipo/ícone com o link aqui!

O memalondb é um projeto de código aberto e precisa da sua ajuda para prosperar!
Se houver um recurso ausente, um bug ou outra melhoria que você gostaria, incentivamos você a contribuir! Sinta -se à vontade para abrir um problema para obter algumas orientações e consultar o guia contribuinte para obter detalhes sobre a configuração do projeto, testes, etc.
Se você está apenas começando, veja bons primeiros problemas que são fáceis de contribuir. Se você fizer uma contribuição não trivial, envie um email e enviarei um bom? adesivo!
Se você faz ou está pensando em fazer um aplicativo usando memandano, informe -nos!
Modmelondb foi criado por @nozbe.
O principal autor e mantenedor de Watermelondb é Radek Pietruszewski (site ⋅? (Twitter))
Veja todos os colaboradores.
O memandano está disponível sob a licença do MIT. Consulte o arquivo de licença para obter mais informações.