Skip to content

kasper-studios/kasdb.js

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

kasdb

kasdb is a simple and easy-to-use database library for Node.js.

Installation

npm install @kasperenok/kasdb

Usage

const { DB } = require("@kasperenok/kasdb");
const db = new DB({ filename: "database/example", extension: ".db" });

Functions

Save Data to File

db.saveData("money", { username: "example username", count: 0 });

Get Data from File

  1. Get full data from file:
const data = db.getData();
console.log(data.money.count);
  1. Get data by key:
const data = db.getData("money");
console.log(data.count);

Event Handling with on Function

Listen for Data Retrieval Event

db.on("getData", (eventData) => {
  console.log(`Data retrieved from key ${eventData.key} in file ${eventData.filename}`);
});

Attributes in eventData for event getData:

  • key
  • data
  • filename

Listen for Data Save Event

db.on("saveData", (eventData) => {
  console.log(`Data saved with key ${eventData.key} in file ${eventData.filename}`);
});

Attributes in eventData for event saveData:

  • key
  • value
  • filename

AsyncDB

AsyncDB has the same API as DB, but all methods are async.

const { AsyncDB } = require("kasperdb");
const db = new AsyncDB({ filename: "database/example", extension: ".db" });

Save Data

await db.saveData("money", { username: "example", count: 0 });

Get Full Data

const data = await db.getData();
console.log(data.money.count);

Get Data by Key

const data = await db.getData("money");
console.log(data.count);

Event Handling

Works the same as DB:

db.on("getData", (e) => console.log(`Got key ${e.key} from ${e.filename}`));
db.on("saveData", (e) => console.log(`Saved key ${e.key} to ${e.filename}`));

Dependencies

  • fs: File system module.
  • msgpack-lite: MessagePack implementation for Node.js.

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors