Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/adelpro/mern-auth-roles-boilerplate

MERN-auth-roles a web application that allows you to manage the authentication and roles of users using MERN (MongoDB Express React Node)
https://github.com/adelpro/mern-auth-roles-boilerplate

authentication cookie hookform jwt mern nodejs react reactjs recoil roles token yup

Last synced: about 1 month ago
JSON representation

MERN-auth-roles a web application that allows you to manage the authentication and roles of users using MERN (MongoDB Express React Node)

Awesome Lists containing this project

README

        

# MERN-auth-roles

[![Codacy Badge](https://app.codacy.com/project/badge/Grade/8a4f92ef7e004d4b9e42cf70fc0376f9)](https://www.codacy.com/gh/adelpro/MERN-auth-roles-boilerplate/dashboard?utm_source=github.com&utm_medium=referral&utm_content=adelpro/MERN-auth-roles-boilerplate&utm_campaign=Badge_Grade)
![](https://komarev.com/ghpvc/?username=adelpro&style=flat-squar&color=brightgreen)

## Live website

https://mern-auth-roles.onrender.com

## About

MERN-auth-roles a full-stack MERN (MongoDB Express React Node) boilerplate starter application with React, Recoil, authentication, roles, JWT, protected api
![MERN-auth-roles](https://i.imgur.com/7J6c8Rf.png)

We have two parts in the application

## MERN-AUTH-ROLES-Backend (sever)

### Futures

✓ User with roles (Admin, Manager, user)

✓ NodeJS server

✓ Token and refresh token

✓ async/await syntax

✓ Server side validation

✓ .env file configuration

✓ Profile image upload with Multer (delete old image and replace it with the new image),

✓ Cross-origin resource sharing (CORS)

✓ Limit repeated requests such as password reset.

✓ Cookies

✓ Password Hashing

✓ Real-time notifications using Socket.io

run this command

```
cd backend
npm install
npm run dev
```

## MERN-AUTH-ROLES-Frontend (client)

### Futures

✓ React DevTools desabled in production

✓ Axios with Interceptors to manage fetchs

✓ Token persist only in memory and cookies

✓ Refresh Token (in memory) and access token (in cookies)

✓ Hookform: to manage form inputs

✓ YUP: to validate inputs

✓ react-multi-select-component

✓ Recoil and Recoil-persist: to manage states

✓ react-icons and @uiball/loaders to give a nice look to the UI

✓ Protected routes with Higher order components

✓ Layout component, it will be very easy to navigation and footer

✓ Profile image upload

✓ Real-time notifications using Socket.io client

### Run the code

you can run the code by executing this command

```
cd frontend
npm install
npm start
```

## Screenshots

### Home page

![MERN-auth-roles](https://i.imgur.com/mdgQyZl.png)

### Dash

![MERN-auth-roles](https://i.imgur.com/gtNEg1i.png)

### Users

![MERN-auth-roles](https://i.imgur.com/om4vVoP.png)
![MERN-auth-roles](https://i.imgur.com/blwnrf2.png)

### Notes

![MERN-auth-roles](https://i.imgur.com/H6bnSRm.png)

![MERN-auth-roles](https://i.imgur.com/08gyywr.png)

### Notifications

[MERN-auth-roles](https://i.imgur.com/yk2nrWy.png)

### Youtube Video demonstration





## Contact us 📨

[![twitter][1.1]][1]
[![facebook][2.1]][2]
[![github][3.1]][3]
[![medium][4.1]][4]

## Support me ❤️

[![Ko-fi](https://badgen.net/badge/icon/Kofi?icon=kofi&label)](https://ko-fi.com/adelbenyahia)
[![Buymeacoffee](https://badgen.net/badge/icon/buymeacoffee?icon=buymeacoffee&label)](https://www.buymeacoffee.com/Adel.benyahia/)
[![PayPal](https://badgen.net/badge/icon/PayPal?icon=https://simpleicons.now.sh/paypal/fff&label)](https://www.paypal.com/paypalme/adelbenyahia)
[![BitCoin](https://badgen.net/badge/icon/bitcoin?icon=bitcoin&label)](bitcoin:1PstR1HYTG8FbVRR7YZhQftYumVAURXuq7?label=Quranipfs&message=Payment%20to%20Quranipfs)

[1]: https://www.twitter.com/adelpro
[1.1]: http://i.imgur.com/tXSoThF.png "twitter icon with padding"
[2]: https://www.facebook.com/adel.benyahia
[2.1]: http://i.imgur.com/P3YfQoD.png "facebook icon with padding"
[3]: https://github.com/adelpro
[3.1]: http://i.imgur.com/0o48UoR.png "github icon with padding"
[4]: adelpro.medium.com
[4.1]: https://i.imgur.com/tijdQEw.png "medium icon with padding"

## Thank you

[![Stargazers repo roster for @adelpro/MERN-auth-roles-boilerplate](https://reporoster.com/stars/adelpro/MERN-auth-roles-boilerplate)](https://github.com/adelpro/MERN-auth-roles-boilerplate/stargazers)

[![Forkers repo roster for @adelpro/MERN-auth-roles-boilerplate](https://reporoster.com/forks/adelpro/MERN-auth-roles-boilerplate)](https://github.com/adelpro/MERN-auth-roles-boilerplate/network/members)