Skip to content
This repository was archived by the owner on Jun 4, 2025. It is now read-only.

ghostdevv/MyKV

Repository files navigation

MyKV

MyKV started out as a wrapper for only MySQL but with the power of knex we support most sql variations.

How to use/connect

See knexjs connecting

const { MyKV } = require('mykv');
// or
import { MyKV } from 'mykv';

const db = new MyKV({
    connection: {
        host: '',
        database: '',
        username: '',
        password: '',
    }
});

db.connect()
    .then(() => console.log('Connected'))
    .catch((e) => console.error(`Unable to connect: ${e.message}`));

Methods

These are the methods used on your created db

  • Get

    await db.get(key);

    const item = await db.get('1234');

    TypeScript:

    interface Result {
        id: string;
        username: string;
    }
    
    const item = await db.get<Result>('1234');
  • Set

    await db.set(key, value);

    await db.set('1234', { id: '1234', username: 'GHOST' });
  • Delete

    await db.del(key);

    await db.del('1234');
  • Has

    await db.has(key);

    const has = await db.has('1234'); // true or false
  • Clear

    await db.clear();

    await db.clear();
  • Keys

    await db.keys(limit?: number);
    Returns all keys in the db, you can optionally provide a limit of the number of keys returned

    const keys = await db.keys();
    const tenKeys = await db.keys(10); // Optional limit
  • Values

    await db.values(limit?: number);
    Returns all items in the db (without their keys), you can optionally provide a limit of the number of values returned

    const values = await db.values();
    const tenValues = await db.values(10); // Optional limit
  • Entries

    await db.entries(limit?: number);
    Returns all keys and values in an array, like Map.prototype.entries

    const entries = await db.entries();
    const tenEntries = await db.entries(10); // Optional limit

Support

About

MyKV is a SQL Key - Value wrapper with some extra features.

Topics

Resources

Stars

Watchers

Forks

Sponsor this project

Packages

 
 
 

Contributors