Socket
Socket
Sign inDemoInstall

loki-local-passport

Package Overview
Dependencies
7
Maintainers
1
Versions
13
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    loki-local-passport

is a custom strategy that simplifies authenticating with Passport using id and password.


Version published
Maintainers
1
Install size
3.07 MB
Created

Readme

Source

loki-local-passport

is a custom strategy that simplifies authenticating with Passport using id and password.

This strategy use persistent in-memory JavaScript Datastore - LokiJS instead of large NoSQL DB like a MongoDB what give for us amazing performance.

Intro

This module give your posibility quickly handle user auth without painfull dev work like configuration and other stuff. Everything what you need is 3 line.  Three line Carl!  You will say but why i need it? It's a simple answer :   Imagine that your are at hackaton and make a prototype of your app. Where you will spend more time in auth module or at the logic of your future startup (I hope you do).

Also this module will be helpfull in a

  • petty projects
  • university projects
  • non-production projects and even more.

Installation

npm install passport-local-passport

Usage

As every passport strategy this one need:

Install this packadges by command :

npm i express express-session  passport body-parser cookie-parser connect-flash

require them and use:

Require all this stuff needed for passport:

const passport = require('passport');


const bodyParser = require('body-parser');
const cookieParser = require('cookie-parser');
const session = require('express-session');
const flash = require('connect-flash');


app.use(bodyParser.urlencoded({ extended: true }));
app.use(cookieParser());
app.use(session({ secret: 'mistery' }));
app.use(passport.initialize());
app.use(passport.session());
app.use(flash());

Require installed module (LokiLocal)

const LokiLocal = require('loki-local-passport');

Add the middleware function LokiLokal.use() to your routes. Example:

app.post(
    '/login',
    LokiLocal.use('login')
  );
  
  app.post(
      '/signup',
      LokiLocal.use('signup')
    );

That`s all what you need to start use it.

If you want control what is going on your can add to middleware LokiLokal.use() object with debug mode. Example:

app.post(
    '/login',
    LokiLocal.use('login', { mode: 'debug' })
  );
  
  app.post(
      '/signup',
      LokiLocal.use('signup',{ mode: 'debug' })
    );

It will print in console all actions.

All of this fields can be placed in your signup form (if not it will have value custom):

  • id required
  • password required
  • name
  • surname
  • email
  • number
  • sex
  • age
  • country

Example of simple app :

const express = require('express');

const passport = require('passport');
const LokiLocal = require('loki-local-passport');

const bodyParser = require('body-parser');
const cookieParser = require('cookie-parser');
const session = require('express-session');
const flash = require('connect-flash');
 


const app = express();
 
app.use(bodyParser.urlencoded({ extended: true }));
app.use(cookieParser());
app.use(session({ secret: 'mistery' }));
app.use(passport.initialize());
app.use(passport.session());
app.use(flash());
 
 
app.post(
    '/login',
    LokiLocal.use('login')
  );
  
app.post(
      '/signup',
      LokiLocal.use('signup')
    );
  
 
 
 
app.listen(8080, () => {
  console.log('Started at the port 8080');
});

FAQs

Last updated on 11 Sep 2018

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc