UNPKG

faster.db

Version:

Easy to use, fast, async-ready JSON database

75 lines (56 loc) 1.87 kB
# FastDB >**An easy-to-use, fast, async-ready Database handler for Node.JS** ## Features - Insert, update, delete, and retrieve data entries. - Supports custom events for data insertion, deletion, and errors. - Type-safe operations with TypeScript. - Automatically loads and saves data to a file. - Handles errors gracefully and emits appropriate events. ## Getting Started ### Prerequisites - Node.js (>=14.x) - TypeScript (>=4.x) ### Installation ```sh npm install faster.db ``` ### Usage (Typescript) ```ts import { createDatabase } from 'faster.db'; type User = { Name: string; ID: number; }; const db = createDatabase<User>('user-database', { Name: '', ID: 0 }); db.on('error', (err) => { console.error('Database error:', err); }); (async () => { const user = await db.insert({ Name: 'John', ID: 1 }); console.log('Inserted user:', user); const exists = await db.dataExists({ Name: 'John' }); console.log('User exists:', exists); const allUsers = await db.getAll(); console.log('All users:', allUsers); const deletedCount = await db.delete({ Name: 'John' }); console.log('Deleted users count:', deletedCount); })(); ``` ### Usage (JavaScript) ```js const { createDatabase } = require('faster.db'); const db = createDatabase('user-database', { Name: String, ID: Number }); db.on('error', (err) => { console.error('Database error:', err); }); (async () => { const user = await db.insert({ Name: 'John', ID: 1 }); console.log('Inserted user:', user); const exists = await db.dataExists({ Name: 'John' }); console.log('User exists:', exists); const allUsers = await db.getAll(); console.log('All users:', allUsers); const deletedCount = await db.delete({ Name: 'John' }); console.log('Deleted users count:', deletedCount); })(); ```