webuild-repos

#️⃣ get a list of open source repositories in any city from github

Showing:

Popularity

Downloads/wk

32

GitHub Stars

0

Maintenance

Last Commit

5yrs ago

Contributors

9

Package

Dependencies

6

License

MIT

Type Definitions

Tree-Shakeable

No?

Categories

Readme

#webuild-repos

Get a list of open source repositories in your city from Github.

##install

npm i webuild-repos

##usage

  1. we will create the following folder structure:

    .
    ├── .env
    ├── config.js
    ├── node_modules
    │   ├── dotenv
    │   └── webuild-repos
    └── index.js
    
  • create a .env file to store all the environment variables:

    NODE_ENV=staging # put development if you want debug info from Github
    LOCATION=Singapore # your city name
    MAX_USERS=1000 # query top number of github users from your city
    MAX_REPOS=50 # list out top number of repositories
    STAR_LIMIT=50 # each repo must have at least this number of stars
    
    # get from https://github.com/settings/applications/new, refer to https://developer.github.com/v3/oauth/
    GITHUB_CLIENT_ID=secret
    GITHUB_CLIENT_SECRET=secret
    
  • create a file config.js with the following contents:

    var city = 'Singapore';
    var country = 'Singapore';
    var locationSymbol = 'SG';
    
    module.exports = {
      location: city,
      city: city,
      country: country,
      symbol: locationSymbol,
    
      api_version: 'v1',
    
      debug: process.env.NODE_ENV === 'development',
    
      githubParams: {
        version: '3.0.0',
        clientID: process.env.GITHUB_CLIENT_ID,
        clientSecret: process.env.GITHUB_CLIENT_SECRET,
        location: process.env.LOCATION || city,
        maxUsers: process.env.MAX_USERS || 1000,
        maxRepos: process.env.MAX_REPOS || 50,
        starLimit: process.env.STAR_LIMIT || 50,
        outfile: __dirname + '/cache.json'
      }
    };
    
  • create index.js:

    require('dotenv').load();
    var config = require('./config');
    var repos = require('webuild-repos').init(config).repos;
    
    setTimeout(function() {
      console.log('Found ' + repos.feed.repos.length + ' repos from Github:')
      console.log('\nMeta info:')
      console.log(repos.feed.meta)
      console.log('\nFirst event info:')
      console.log(repos.feed.repos[0])
    }, 60000);
    
  • install the relevant dependencies:

    npm i webuild-repos
    npm i dotenv
    
  • run the file with node index.js

#contribute

Please see CONTRIBUTING.md for details.

#versioning

Following the Semantic Versioning guidelines, run the grunt bump, grunt bump:minor or grunt bump:major commands to bump the version accordingly.

#license

webuild-repos is released under the MIT License.

Rate & Review

Great Documentation0
Easy to Use0
Performant0
Highly Customizable0
Bleeding Edge0
Responsive Maintainers0
Poor Documentation0
Hard to Use0
Slow0
Buggy0
Abandoned0
Unwelcoming Community0
100
No reviews found
Be the first to rate

Alternatives

No alternatives found

Tutorials

No tutorials found
Add a tutorial