
Security News
The Hidden Blast Radius of the Axios Compromise
The Axios compromise shows how time-dependent dependency resolution makes exposure harder to detect and contain.
json-local-database
Advanced tools
JSON local database is like mongoDB database. It's a simple local database that uses JSON files as collections. A perfect solution of electron/node apps that needs a local database.
json-local-database JSON local database is like mongoDB database. It's a simple local database that uses JSON files as collections. A perfect solution of electron/node apps that needs a local database..
This package creates a JSON file for each collection inside the application's json-local-database folder. The json-local-database folder is created when you create your first collection.
Table of Contents:
The preferred way of installation is to install it locally on the application.
npm install json-local-database --save
After installing the package, you can now use it in your application. To use it, just require it in your application.
const db = require("json-local-database");
The function createCollection() creates a json file [collection].json inside the application local-db folder. It will return an error if the collection/json file is already created.
db.createCollection(collectionName, callback(success, message)=>{});
const db = require("json-local-database");
db.createCollection("users", (success, message) => {
if (success) {
console.log(message);
} else {
console.log("error. ", message);
}
});
/*
Output:
Success: true
Message: Success or error message
Result file (users.json):
Inside the file :
{
"users": []
}
*/
The function db.insertOne() insert an object into the array of the collection.
db.insertOne(
collectionName,
{ name: "Sanan", age: 24 },
(success, data, message) => {}
);
To insert an object to the collection, use the insertOne() function. The function accepts 3 parameters, the collection name, the object to be inserted and the callback function.
db.insertOne("users", { name: "Sanan", age: 24 }, (success, data, message) => {
if (success) {
console.log(data);
} else {
console.log("error. ", message);
}
});
/*
Output:
Success: true
data: { name: 'Sanan', age: 24, id: 1702051713569 }
Message: Success or Error Message if any
*/
The function db.insertMany() insert an array of object into the specified collection.
db.insertMany(
collectionName,
[
{ name: "Sanan", age: 24 },
{ name: "Junaid", age: 32 },
],
(success, data, message) => {}
);
To insert multiple objects to the collection, use the insertMany() function. The function accepts 3 parameters, the collection name, the array of objects to be inserted and the callback function.
db.insertMany(
"users",
[
{ name: "Sanan", age: 24 },
{ name: "Junaid", age: 32 },
],
(success, data, message) => {
if (success) {
console.log(data);
} else {
console.log("error. ", message);
}
}
);
/*
Output:
Success: true
data: [
{ name: 'Sanan', age: 24, id: 1702052585609 },
{ name: 'Junaid', age: 32, id: 1702052585609 },
]
Message: Success or Error Message if any
*/
The function db.getAll() finds all the saved objects from the collection and returns in an array.
db.getAll(collectionName, (success, data, message) => {});
To get all the data from the collection, use the getAll() function. The function accepts 2 parameters, the collection name and the callback function.
db.getAll("users", (success, data, message) => {
if (success) {
console.log(data);
} else {
console.log("error. ", message);
}
});
/*
Output:
Success: true
data: [
{ name: 'Sanan', age: 24, id: 1702052585609 },
{ name: 'Junaid', age: 32, id: 1702052585609 },
]
Message: Success or Error Message if any
*/
The function db.count() finds the count of all the saved objects from the collection and returns the count.
db.count(collectionName, (success, count, message) => {});
To get the count of all the data from the collection, use the count() function. The function accepts 2 parameters, the collection name and the callback function.
db.count("users", (success, count, message) => {
if (success) {
console.log(count);
} else {
console.log("error. ", message);
}
});
/*
Output:
Success: true
count: 2
Message: Success or Error Message if any
*/
The function db.search() finds the saved objects from the collection that matches the search query and returns in an array.
db.search(collectionName, key, value, , (success, data, message) => {});
To search in the collection, use the db.search() function. The function accepts 4 parameters, the collection name, key, value and the callback function.
db.search("users", "name", "Sanan", (success, data, message) => {
if (success) {
console.log(data);
} else {
console.log("error. ", message);
}
});
/*
Output:
Success: true
data: [
{ name: 'Sanan', age: 24, id: 1702052585609 },
]
Message: Success or Error Message if any
*/
The function db.getFieldValues() finds the values of a key in the collection and returns in an array.
db.getFieldValues(collectionName, key, (success, data, message) => {});
To get the values of a key in the collection, use the db.getFieldValues() function. The function accepts 3 parameters, the collection name, key and the callback function.
db.getFieldValues("users", "name", (success, data, message) => {
if (success) {
console.log(data);
} else {
console.log("error. ", message);
}
});
/*
Output:
Success: true
data: [
"Sanan",
"Junaid"
]
Message: Success or Error Message if any
*/
The function db.searchByField() finds the saved objects from the collection having the key and returns in an array of matched objects.
db.searchByField(collectionName, key, (success, data, message) => {});
To search by field in the collection, use the db.searchByField() function. The function accepts 3 parameters, the collection name, key and the callback function.
db.searchByField("users", "name", (success, data, message) => {
if (success) {
console.log(data);
} else {
console.log("error. ", message);
}
});
/*
Output:
Success: true
data: [
{ name: 'Sanan', age: 24, id: 1702052585609 },
{ name: 'Junaid', age: 32, id: 1702052585609 },
]
Message: Success or Error Message if any
*/
The function db.filter() finds the saved objects from the collection having the key and returns in an array of matched objects.
db.filter(collectionName, condition, (success, data, message) => {});
To filter by condition in the collection, use the db.filter() function. The function accepts 3 parameters, the collection name, condition and the callback function.
db.filter("users", { name: "Sanan" }, (success, data, message) => {
if (success) {
console.log(data);
} else {
console.log("error. ", message);
}
});
/*
Output:
Success: true
data: [
{ name: 'Sanan', age: 24, id: 1702052585609 },
]
Message: Success or Error Message if any
*/
The function db.filter() also finds the saved objects with less than or greater than condition from the collection and returns in an array of matched objects.
db.filter(collectionName, condition, (success, data, message) => {});
To filter by less than or greater than condition in the collection, use the db.filter() function. The function accepts 3 parameters, the collection name, condition and the callback function. The condition object should be in the format {key: {$lt: value}} or {key: {$gt: value}}.
db.filter("users", { age: { $gt: 30 } }, (success, data, message) => {
if (success) {
console.log(data);
} else {
console.log("error. ", message);
}
});
/*
Output:
Success: true
data: [
{ name: 'Junaid', age: 32, id: 1702052585609 },
]
Message: Success or Error Message if any
*/
The function db.updateOne() updates the saved objects from the collection that matches the search query and returns updated object.
db.updateOne(collectionName, where, newValue, , (success, data, message) => {});
To update in the collection, use the db.update() function. The function accepts 4 parameters, the collection name, where, newValue and the callback function.
db.update(
"users",
{ age: 24 }, // where
{ age: 25 }, // newValue
(success, data, message) => {
if (success) {
console.log(data);
} else {
console.log("error. ", message);
}
}
);
/*
Output:
Success: true
data: { name: 'Sanan', age: 25, id: 1702052585609 },
Message: Success or Error Message if any
*/
The function db.updateMany() updates the saved objects from the collection that matches the search query and returns updated array of object.
db.updateMany(collectionName, where, newValue, , (success, data, message) => {});
To update in the collection, use the db.updateMany() function. The function accepts 4 parameters, the collection name, where, newValue and the callback function.
db.updateMany(
"users",
{ age: 24 }, // where
{ age: 25 }, // newValue
(success, data, message) => {
if (success) {
console.log(data);
} else {
console.log("error. ", message);
}
}
);
/*
Output:
Success: true
data: [
{ name: 'Sanan', age: 25, id: 1702052585609 },
{ name: 'Junaid', age: 25, id: 1702052585609 },
]
Message: Success or Error Message if any
*/
The function db.deleteOne() deletes the saved objects from the collection that matches the search query and returns deleted object.
db.deleteOne(collectionName, where, (success, data, message) => {});
To delete in the collection, use the db.deleteOne() function. The function accepts 3 parameters, the collection name, where and the callback function.
db.deleteOne(
"users",
{ name: "Junaid" }, // where
(success, data, message) => {
if (success) {
console.log(data);
} else {
console.log("error. ", message);
}
}
);
/*
Output:
Success: true
data: { name: 'Sanan', age: 25, id: 1702052585609 },
Message: Success or Error Message if any
*/
The function db.deleteMany() deletes the saved objects from the collection that matches the search query and returns deleted array of object.
db.deleteMany(
"users",
{ age: 25 }, // where
(success, data, message) => {
if (success) {
console.log(data);
} else {
console.log("error. ", message);
}
}
);
/*
Output:
Success: true
data: [
{ name: 'Sanan', age: 25, id: 1702052585609 },
{ name: 'Junaid', age: 25, id: 1702052585609 },
]
Message: Success or Error Message if any
*/
The function db.clearCollection() clears the collection and returns the empty array.
db.clearCollection(collectionName, (success, data, message) => {});
To clear the collection, use the db.clearCollection() function. The function accepts 2 parameters, the collection name and the callback function.
db.clearCollection("users", (success, data, message) => {
if (success) {
console.log(data);
} else {
console.log("error. ", message);
}
});
/*
Output:
Success: true
data: []
Message: Success or Error Message if any
*/
The function db.deleteCollection() deletes the collection and returns the success message. It deletes the physical file from the json-local-database folder.
db.deleteCollection("users", (success, message) => {
if (success) {
console.log(message);
} else {
console.log("error. ", message);
}
});
/*
Output:
Success: true
Message: Collection deleted successfully or Success or Error Message if any
*/
For contributions, please see the CONTRIBUTE.md file. Thank you.
FAQs
JSON local database is like mongoDB database. It's a simple local database that uses JSON files as collections. A perfect solution of electron/node apps that needs a local database.
We found that json-local-database demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
The Axios compromise shows how time-dependent dependency resolution makes exposure harder to detect and contain.

Research
A supply chain attack on Axios introduced a malicious dependency, plain-crypto-js@4.2.1, published minutes earlier and absent from the project’s GitHub releases.

Research
Malicious versions of the Telnyx Python SDK on PyPI delivered credential-stealing malware via a multi-stage supply chain attack.