safe-auth
TypeScript icon, indicating that this package has built-in type declarations

0.2.1 • Public • Published

Build Status codecov npm version

What's safe-auth

safe-auth is a general purpose authentication solution for Node.js. It's written in TypeScript with %100 test code coverage.

Features

At its core it provides these features:

  1. Create users
  2. Activate/Deactivate users
  3. Authenticating a user based on their username and password and returning the authenticated user
  4. Issuing a token for a user
  5. Authenticating a user based on an active issued token and returning the authenticated user
  6. Issuing new token based on a refresh token (signing in)
  7. Reset user's password when they forget it
  8. Revoking tokens (signing out)
  9. Revoking all active tokens of a user (signing out of all devices)
  10. Optionally block a user when he has several failed attempts
  11. Logging all requests, responses and events
  12. Configuring paramters and enabaling/disabling optional features in a centralized config system

Storage engines

By default safe-auth provides an in memory storage engine (not to be used in production) and it's able to use different storage engines via third party packages.

Currently there is a third party package that uses Sequelize as the storage backend which makes Postgres, MySQL, MariaDB, SQLite and Microsoft SQL available.

TypeORM and Mongoose will be supported by other third party packages soon. So the goal is to have at least these storage backends for safe-auth:

  1. Sequelize
  2. TypeORM
  3. Mongoose

Serving options

The core has its API with the JS classes it exposes. One can simply use these classes in her project. But there are third party packages that provide different serving options ready out of the box:

  1. HTTP POST/GET requests
  2. GraphQL
  3. Rest

Reporting bugs

You can report issues/bugs in the github repository of the project: https://github.com/evenset/safe-auth/issues

Package Sidebar

Install

npm i safe-auth

Weekly Downloads

2

Version

0.2.1

License

MIT

Unpacked Size

55.3 kB

Total Files

26

Last publish

Collaborators

  • sassanhe