lil-db-js
v1.0.1
Published
Local, indexed and lightweight database
Downloads
22
Maintainers
Readme
lil-db (Local, Indexed and Lightweight database)
Introduction
lil-db is an open source database model that can be applied to any Node JS proyect in a few steps. Lil-db solves the two main problems of the traditional local databases models:
- It divides the data into files, so the reading and writing processes are cost-friendly
- It creates indexes so you can make complex searchs without reading files and looping through each object in your collection
Getting started
To start using lil-db, just install it in your project with npm:
npm install lil-db-js
Or using YARN:
yarn add lil-db-js
Basic usage
//This code must be enclosed on an async function in order to use the "await" keyword
const db = require("lil-db-js")
//Initializing the database
await db.init("your-path","secret-to-encrypt-passwords")
//Creating a new collection
const model = {
name:{
type:"string",
index:true
},
email:{
type:"email",
index:true,
unique:true
},
password:"password",
age:"number",
optionalData:"any"
}
await db.newCollection("your-collection-name",model)
//Inserting a new object
const object = {
username:"User1",
email:"[email protected]",
password:"1234",
age:18,
optionalData:undefined
}
await db.insert("your-collection-name",object)
//Getting an object
const found = await db.find("your-collection-name","username",username => username === "User1")
//Modifying an object
await db.modify("your-collection-name",found.id,obj => {
obj["age"] = 19
return obj
})
//Deleting an object
await db.delete("your-collection-name",found.id)
//Deleting a collection
await db.deleteCollection("your-collection-name","cascade")
Docs
To learn how to use lil-db.js, check the official documentation
License
This projects runs under the MIT license. You can find a full copy of the license inside the repository.