2.0.0 • Published 2 years ago
@tush-tr/nosondb v2.0.0
nosondb
A json based database you can use in your nodejs projects just by installing the package.
nosondb enables you to use a json file as a database for your project.
How to use it?
Installing the package
npm i @tush-tr/nosondb
Require the package in your JS file
const nosondb = require("@tush-tr/nosondb")
Create a new instance from the required package
const nosondb = require("@tush-tr/nosondb")
const nodb = new nosondb("db.json") // specify your json file name you want to use as database
Functionalities
Creating a record
await nodb.create(data)
Updating a record
await nodb.update(id,data)
Deleting a record
await nodb.delete(id)
Finding all records
const allData = await nodb.getAll();
Finding one specific record by Id
const specificData = await nodb.getOne(id)
Finding one specific record by filters
const filteredData = await nodb.getOneBy(data)
Examples
Create a record
const createRecord = async ()=>{
await nodb.create({name: "Product1",price: 12})
}
A new object will be created inside your json file with a id field also.
Update a record
const updateRecord = async ()=>{
await nodb.update("800dc06c",{name: "Keyboard"})
}
first argument of update function will take your id name.
Delete a record
const deleteRecord = async ()=>{
await nodb.delete("800dc06c")
}
delete function also requires id name.
Find all records
const findRecords = async ()=>{
const allData = await nodb.getAll();
console.log(allData)
}
Find one specific record by Id
const findRecord = async ()=>{
const specificData = await nodb.getOne("800dc06c")
console.log(specificData)
}
Find one specific record by filters
const createRecord = async ()=>{
const filteredData = await nodb.getOneBy({name: 'Product1'})
console.log(filterdData)
}
Find some records by filters
const fetchRecords = async ()=>{
const filteredData = await nodb.getAllBy({name: 'Product1'})
console.log(filterdData)
}
Contributing 🍻
I welcome pull requests, bug fixes and issue reports. Before proposing a change, please discuss your change by raising an issue.
Maintainer 😎
License
MIT license © Tushar Rajpoot