3.1.7 • Published 5 months ago
erenaydb v3.1.7
ErenayDB
Modern, flexible database adapter for Node.js
For Turkish version, go to readme_tr.md
Features
- Multiple database adapters (JSON, MongoDB, RethinkDB, MySQL, YAML, LocalStorage)
- Simple and consistent API
- TypeScript support
- Async/await support
- Detailed error messages
- Debug mode
- Multi-language support (English/Turkish)
Installation
npm install erenaydb
Basic Usage
import { ErenayDB } from 'erenaydb'
// Initialize with JSON adapter (default)
const db = new ErenayDB({
adapter: 'json',
dbName: 'mydb',
dbFolder: 'database',
})
// Connect to database
await db.connect()
// Set a value
await db.set('user', { name: 'John', age: 25 })
// Get a value
const user = await db.get('user')
console.log(user) // { name: 'John', age: 25 }
// Check if key exists
const exists = await db.has('user') // true
// Delete a value
await db.delete('user')
// Array operations
await db.push('users', 'John') // ['John']
await db.push('users', 'Jane') // ['John', 'Jane']
await db.unpush('users', 'John') // ['Jane']
// Numeric operations
await db.add('counter', 5) // 5
await db.add('counter', 3) // 8
await db.subtract('counter', 2) // 6
// Get all data
const allData = await db.all()
// Delete all data
await db.deleteAll()
// Disconnect
await db.disconnect()
Advanced Usage
MongoDB Adapter
const db = new ErenayDB({
adapter: 'mongo',
dbName: 'mydb',
mongoOptions: {
url: 'mongodb://localhost:27017',
},
})
MySQL Adapter
const db = new ErenayDB({
adapter: 'mysql',
dbName: 'mydb',
mysqlOptions: {
host: 'localhost',
port: 3306,
user: 'root',
password: 'password',
database: 'mydb',
},
})
RethinkDB Adapter
const db = new ErenayDB({
adapter: 'rethink',
dbName: 'mydb',
rethinkOptions: {
host: 'localhost',
port: 28015,
db: 'mydb',
},
})
YAML Adapter
const db = new ErenayDB({
adapter: 'yaml',
dbName: 'mydb',
dbFolder: 'database',
readable: true, // Pretty format YAML output
})
LocalStorage Adapter (Browser)
const db = new ErenayDB({
adapter: 'localStorage',
dbName: 'mydb',
})
Configuration Options
interface DatabaseOptions {
adapter: 'json' | 'mongo' | 'rethink' | 'mysql' | 'yaml' | 'localStorage'
checkUpdates?: boolean // Check for package updates
language?: 'en' | 'tr' // Error message language
dbName: string // Database name
dbFolder?: string // For file-based adapters
readable?: boolean // Pretty format output
noBlankData?: boolean // Throw error on undefined values
debug?: boolean // Enable debug logging
mongoOptions?: {
url: string
schema?: string
}
rethinkOptions?: {
host: string
port: number
db?: string
}
mysqlOptions?: {
host: string
port: number
user: string
password: string
database: string
}
}
License
This project is protected under DMCA. All rights reserved.
3.1.3
5 months ago
3.1.2
5 months ago
3.1.1
5 months ago
3.1.0
5 months ago
3.1.7
5 months ago
3.1.6
5 months ago
3.1.5
5 months ago
3.1.4
5 months ago
3.0.2
5 months ago
3.0.1
5 months ago
3.0.0
5 months ago
0.0.10
12 months ago
0.0.9
12 months ago
0.0.8
12 months ago
0.0.7
12 months ago
0.0.5
1 year ago
0.0.4
1 year ago
0.0.6
1 year ago
0.0.3
1 year ago
0.0.2
1 year ago
0.0.1
1 year ago