self-hosted, bare-bones licensing API
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
__tests__
src
.eslintrc
.gitignore
.travis.yml
CHANGELOG.md
README.md
aws-config.example.json
index.js
jest-setup.js
package-lock.json
package.json

README.md

authkey

self-hosted, bare-bones licensing API

Basically a very limited version of what keygen.sh does.

npm Build Status Coverage StatusJavaScript Style Guide

Quick start

  1. configure Amazon SES or get some gmail creds

  2. install

npm i authkey
  1. use
const authkey = require('authkey')

authkey({
  from: 'superthing@things.com'
  productName: 'SuperThing',
  mailerConfig: {
    // see below for other services
    type: 'gmail',
    credentials: {
      user: process.env.GMAIL_USER,
      pass: process.env.GMAIL_PASS,
    }
  },
}).listen()

mailerConfig options

service (type) required credentials
amazonSES accessKeyId, secretAccessKey, region
gmail user, pass

API Reference

verb endpoint what it does
POST /request/:address creates a new auth key for the given address and sends an email with the auth key
POST /verify/:authkey verifies the given auth key

Database

a JSON file handled with lowdb

Versioning

SemVer is used (with help of semantic-release).

Contributing

git clone https://github.com/adekbadek/authkey.git
cd authkey/
npm i
npm t

Will install the dependencies and run tests in watch mode.

Tests

with Jest

npm t

Style guide

using Standard