1.0.1 • Published 2 years ago

github-keyvalue v1.0.1

Weekly downloads
-
License
MIT
Repository
github
Last release
2 years ago

Github-Keyvalue

An opensource db backed by Github / Octkit. Store and manage data with json format in repo with dedicate branch.

It's quite convinent for CI/CD that you can just record and manage your data in github repo with github actions.

Usage

new GithubKV(options)

new GithubKV({
    token, // The personal access token of your account (required)
    owner, // The owner of this repo (required)
    repo, // The name of repo (required)
    branch, // The branch stores the data (requied)
    path, // The path store the data (optional)
})

token can be created in settings
owner is name of the owner of your database repo. For example, if I want to have a db, it should be owner: 'xrdavies'.
repo is the name of your database repo. You can name it as you want.
branch is the branch where you put your data in your repo.
path is the path store data, it's optional. The default is the root folder of repo

list() : Promise<T | undefined>

List all the available records in db.

add(data) : Promise<T | undefined>

Add a record to db.

get(id) : Promise<T | undefined>

Get a record according to id.

update(id, data) : Promise<T | undefined>

Update record according to id.

remove(id) : Promise<T | undefined>

Remove record according to id.

Thanks to

HubDB is a github-powered database created by Mapbox.
githubDB is a Lightweight Cloud based JSON Database with a MongoDB like API for Node.
Simple Github DB is a simpe key value store using Github.
Issue DB uses GitHub Issues as a JSON datastore.
ghkv is a key-value store for your CI/CD workflows, backed by GitHub API.