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

safe-auth

v0.2.1

Published

General purpose authentication solution for Node.js

Downloads

7

Readme

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