npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@sl-code-lords/github-db

v1.1.0

Published

github repository database

Downloads

1,351

Readme

Status GitHub Issues GitHub Pull Requests License


📝 Table of Contents

🧐 About

use github repository as database

🏁 Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.

Installing

yarn add @sl-code-lords/github-db

or

npm i @sl-code-lords/github-db

🎈 Usage

var Github_db = require('@sl-code-lords/github-db')
var config={ github_token: 'token', user_name:'user_name', repo:'test_github_db',is_private_repo:true }
var git = new Github_db(config)

Config

const config = {
    github_token, // your github token
    user_name, // your github username
    repo, // repo name for github db
    commit_message, // commit massage
    committer_mail, // mail of any github account for commit
    committer_name, // name for committer
    use_template, // if you have template repo use_template : 'username/repo'
    is_private_repo // if true repo will gen as private
}

Connecting..

const is_conn = await git.connect()
//is_conn
true

File Model

//init new file
var File = git.File('hello.txt','Init','Files/')
        
// upload file to github
var init = await File.upload_data(Buffer.from('test file upload', 'utf-8'))
        
//delete File From Github
var del = await File.delete_file()
//init
true

//del
true

String Model

var password = '' // password for enc file method

//init new String Model
var session = git.stringModel('session','Init','DB/',password)

// add new string
var add = await session.update_data('Hello I Am Ravindu Manoj -')

// + add string
var second_add = await session.update_data('@ravindu01manoj')

// replace new string
var third_add = await session.update_data('replacement add',true)

// get data from model
var get_data = await session.get_data()

// delete model
var del = await session.delete_model()
//add
Hello I Am Ravindu Manoj -

//second_add
Hello I Am Ravindu Manoj -@ravindu01manoj

//third_add
replacement add

//get_data
replacement add

//del
true

Array Model

var password = '' // password for enc file method

//init new Array Model
var list = git.arrayModel('list','Init','DB/',password)

// add new array
var add = await list.update_data([1,'mango'])

// + add array
var second_add = await list.update_data(['banana','apple'])

// replace new array
var third_add = await list.update_data(['cat','dog','ant'],true)

// get data from model
var get_data = await list.get_data()

// delete model
var del = await list.delete_model()
//add
[ 1, 'mango' ]

//second_add
[ 1, 'mango', [ 'banana', 'apple' ] ]

//third_add
[ 'cat', 'dog', 'ant' ]

//get_data
[ 'cat', 'dog', 'ant' ]

//del
true

Object Model

var password = '' // password for enc file method

//init new Object Model
var item = git.objectModel('item','Init','DB/',password)

// add new object
var add = await item.update_data({name : 'Ravindu',age:'21'})

// + add object
var second_add = await item.update_data({country : 'sri_lanka',age:22,language : 'sinhala'})

// replace new object
var third_add = await item.update_data({game:'cricket',year: 2023},true)

// get data from model
var get_data = await item.get_data()

// delete model
var del = await item.delete_model()
//add
{ name: 'Ravindu', age: '21' }

//second_add
{ name: 'Ravindu', age: 22, country: 'sri_lanka', language: 'sinhala' }

//third_add
{ game: 'cricket', year: 2023 }

//get_data
{ game: 'cricket', year: 2023 }

//del
true

✍️ Authors

See also the list of contributors who participated in this project.