express-ticket v1.0.9
Express-Ticket
A package for Express.js that provides user authentication like login, registration, remember me, password reset and email verification.
This package is inspired by Laravel that is always magical!
Installation
npm i --save express-ticketPreparation
Run the command below to set up Sequelize in your app.
npx sequelize initAnd set your DB connection info in /config/config.json.
Note:
You do NOT have to create migrations & models by yourself because this package has them.
Then, run the command below.
npx ticket publishThis command will create the following files.
- config/*
- locales/*
- migrations/*
- models/*
- routes/*
- views/auth/*
Now your /migrations folder have two files.
Create DB tables called Users & PasswordResets by Sequelize command.
npx sequelize db:migrateConfiguration
You at least have to set top URL of your Express app in /config/app.js.
And see files of /config if you'd like to change more configurations.
Usage
const express = require('express');
const app = express();
const ExpressTicket = require('express-ticket');
const ticket = new ExpressTicket();
ticket.routes(app, {
verify: true, // default: false
csrf: true, // default: true
locale: 'en' // or set default locale in /config/locale.js
});
app.listen(5000, () => {
console.log('Lisening...');
});Now you have some routes like this.
- /login
- /register
- /password/reset
- /passowrd/email
- /email/verify/*
- /email/resend
- /home
You can customize the features by yourself.
See the route files located in /routes.
And you also can learn authMiddleware in /routes/home.js
About middleware
ExpressTicket automatically use the following middlewares in its class.
Please be careful NOT to call them again in your code.
- body parser
- locale
- session
- flash
- cookie parser
- passport
Dependencies
ExpressTicket utilizes many packages for its features.
Thank you greate developers of them!
See package.json for the details.
License
This package is licensed under the MIT License.
Copyright 2020 Sukohi Kuhoh