1.0.0 • Published 12 days ago

@aoitelegram/database v1.0.0

Weekly downloads
-
License
MIT
Repository
-
Last release
12 days ago

@aoitelegram/database

NPM Version Bot API NPM Downloads License

@aoitelegram/database is a Node.js library for managing various types of databases, including Firebase Realtime Database, MongoDB, and a generic file-based storage solution. It provides a unified interface for performing CRUD operations, managing events, and checking database responsiveness.

Installation

You can install the library via npm:

npm install @aoitelegram/database

Usage

FirebaseDB

import { FirebaseDB } from "@aoitelegram/database";

// Create a FirebaseDB instance
const db = new FirebaseDB("<your-firebase-database-url>", {
  projectId: "<your-firebase-priject-id>",
  tables: ["users", "posts"], // Optional: specify tables
});

// Connect to the Firebase database
await db.connect();

// Perform operations such as get, set, delete, etc.
await db.set("users", "user1", { name: "John", age: 30 });
const user = await db.get("users", "user1");
console.log(user); // Output: { name: 'John', age: 30 }

MongoDB

import { MongoDB } from "@aoitelegram/database";

// Create a MongoDB instance
const db = new MongoDB("<your-mongodb-url>", {
  tables: ["users", "posts"], // Specify tables
});

// Connect to the MongoDB database
await db.connect();

// Perform operations such as get, set, delete, etc.
await db.set("users", "user1", { name: "John", age: 30 });
const user = await db.get("users", "user1");
console.log(user); // Output: { name: 'John', age: 30 }

StorageDB

import { StorageDB } from "@aoitelegram/database";

// Create a StorageDB instance
const db = new StorageDB({
  path: "./data", // Optional: specify data directory
  tables: ["users", "posts"], // Optional: specify tables
});

// Connect to the storage database
await db.connect();

// Perform operations such as get, set, delete, etc.
await db.set("users", "user1", { name: "John", age: 30 });
const user = await db.get("users", "user1");
console.log(user); // Output: { name: 'John', age: 30 }

API Documentation

Please refer to the API Documentation for detailed information on classes, methods, and usage examples.

Contributing

Contributions are welcome! Please feel free to submit issues or pull requests.

License

This library is released under the MIT License.