Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/shahriaras/expressjs-auth-starter
Expressjs Starter Project for user register, login, email verify, reset password, change password.
https://github.com/shahriaras/expressjs-auth-starter
authentication bcrypt expressjs mongodb nodejs nodemailer
Last synced: about 10 hours ago
JSON representation
Expressjs Starter Project for user register, login, email verify, reset password, change password.
- Host: GitHub
- URL: https://github.com/shahriaras/expressjs-auth-starter
- Owner: shahriarAS
- Created: 2022-07-03T06:19:49.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2022-07-03T16:22:07.000Z (over 2 years ago)
- Last Synced: 2024-01-29T13:54:51.597Z (12 months ago)
- Topics: authentication, bcrypt, expressjs, mongodb, nodejs, nodemailer
- Language: JavaScript
- Homepage:
- Size: 49.8 KB
- Stars: 5
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Expressjs-auth-starter
For almost every backend app or API I have to implement complete Auth functionalities. Creating DB Schema, making routes, implementing login and etc takes a long time of my whole project. That's why I though that why not I make a starter project with all auth features and just clone it when I need? From this thought I build this starter project.
**Auth Features:**
1. Sign Up
2. Login
3. Email Verification ( Gmail )
4. Reset Password
5. Change Password
6. **Test Included ( Jest + Supertest )****User Schema Field**
1. Username
2. Email
3. Password
4. User Role ( Admin/Customer )
5. Active ( True/False )
6. Verified ( True/False )
7. Random String ( For Verification Purpose )
8. Created At
9. Updated At**Tech Stack**
1. NodeJs
2. ExpressJs
3. MongoDB**Packages**
1. bcrypt
2. cors
3. dotenv
4. googleapis
5. jsonwebtoken
6. mongodb
7. mongoose
8. nodemailer
9. nodemon
10. jest
11. supertest## **How to use?**
1. Clone this repo.
2. Go to the directory.
3. Make a .env file.
4. Open .env.example file and copy everything from this file.
5. Paste copied text to just created .env file
6. Fill necessary variable. ( How to get CLIENT_ID, CLEINT_SECRET etc ?? Follow this [link](https://docs.google.com/document/d/e/2PACX-1vSC-d9T5kRDn-J8iem57OXC5fK5KU1m8SZNinxPcU4b4qBTET7PWhWaN6lSTvdAKYPiP81oIudvEraB/pub) )
8. Use `yarn install` or `npm install` command
9. Use `yarn dev` or `npm dev` command.**N.B: Your test may fail, take a look and change necessary value to pass.**