github-keys

find the public keys of a given github user

Usage no npm install needed!

<script type="module">
  import githubKeys from 'https://cdn.skypack.dev/github-keys';
</script>

README

github-keys

github-keys is a simple module that finds the public keys of a given Github user. Its code is based on a private function in substack/cipherhub, however github-keys maintains a streaming API and doesn’t filter the returned keys.

Build status

Install

$ npm install [-g] github-keys

Usage

var keys = require('github-keys')
var through = require('through2')

keys('alice').pipe(through(
  function (key, enc, next) {
    console.log(key.toString())
    next()
  }
))

w/callbacks

Sometimes you just want all the keys in an array, so github-keys provides an alternate endpoint to facilitate that use-case.

var keys = require('github-keys/all')

keys('alice', function (err, array) {
  console.log(array)
})
Running the usage examples

To run either of these examples in node or the browser, use the following commands:

# node
$ npm run example
$ npm run example-all

# browser, obviously
$ npm run example-browser
$ npm run example-all-browser

Because Github doesn’t support CORS for the /{user}.keys endpoint, github-keys needs to go through a reverse proxy in order to work in the browser. This is easily configured, however, with the browserify transform, envify:

$ CORS_PROXY='http://cors.proxy.com/' browserify -t envify program.js > bundle.js

Command-line usage

If you install github-keys with the -g flag, you can access the command-line version:

$ github-keys {username}

License

MIT