Dexie.js é uma biblioteca simples e concisa para trabalhar com o “Indexed Database API” ou IndexedDB.
IndexedDB é uma maneira de armazenar dados persistentemente no navegador. Dado que permite a criação de aplicações web com recursos de consulta avançada, estes podem ser executados on-line e off-line. IndexedDB é útil para aplicativos que armazenam uma grande quantidade de dados e aplicações que não necessitam de uma ligação permanente à Internet para funcionar.
Também pode ser muito útil salvar dados em local em um aplicativo híbrido por exemplo.
Exemplo de uso:
/*
|---------------------------------------------
| Make a database connection
|---------------------------------------------
*/
var db = new Dexie('MyDatabase');
// Define a schema
db.version(1)
.stores({
friends: 'name, age'
});
// Open the database
db.open()
.catch(function(error){
alert('Uh oh : ' + error);
});
/*
|---------------------------------------------
| Then run some queries
|---------------------------------------------
*/
// Find some old friends
db.friends
.where('age')
.above(75)
.each(function(friend){
console.log(friend.name);
});
// or make a new one
db.friends
.add({
name: 'Camilla',
age: 25
});
Web: dexie.org
Documentação: GitHub
