expressjs_auth is a simple, flexible, and fast solution for creating Express.js applications with built-in authentication. It supports both MySQL and MongoDB, providing all the necessary middlewares, services, controllers, and routes to get started quickly.
- Database Support: Easily connect your project to either MySQL or MongoDB.
- JWT Authentication: Secure authentication using JSON Web Tokens (JWT).
- User Registration and Login: Prebuilt endpoints for user sign-up and login with password encryption.
- Email Verification: Users receive a verification email upon registration to activate their account.
- Account Verification Flow: Login is only allowed after the user has verified their email.
- Quick Setup: Create and configure a fully functional authentication system with minimal effort.
To create a expressjs_auth project, run:
npx expressjs_auth create name-project This command will generate a fully configured project directory.
- Navigate to the project directory:
cd name-project- Install dependencies:
npm install- Configure email credentials in the .env file:
- EMAIL_USER=ton.email@gmail.com
- EMAIL_PASS=ton_mot_de_passe_app
- Run the server:
npm start-
POST
http://localhost:3000/api/register
Request body:{ "email": "ton.email@gmail.com", "password": "Amineu&12&" } -
Upon registration, a verification email is sent to the user.
-
The user must click the link in the email to verify their account before being able to login.
- Click the verification link received by email to activate your account.
- POST
http://localhost:3000/api/login
Request body:{ "email": "ton.email@gmail.com", "password": "Amineu&12&" } - Login is only successful if the account is verified. Your project will be live and ready for customization!