- Courseopia is an online platform where users can create and manage courses and masterclasses. Participants can enroll in courses, follow lessons, complete various sections, and submit a final project for evaluation by the course instructor. After the review, users receive feedback via email.
- License: MIT
- CRUD operations for lessons, master and courses.
- Authentication and authorization.
- Account verification.
- Password reset.
- Role based access control.
- Cache management.
- Simple and easy to use UI and UX.
- Organized and understandable app structure.
- Responsive design.
Link: https://demo8.isaccobertoli.com
- React
- React Router DOM
- Redux Toolkit
- Tailwind CSS
- Lucide React
- Node JS
- Express JS
- MongoDB
- JWT Auth
- Express Validator
- Nodemailer
- Multer
- Home | Master
- Course | Lessons
- Leaderboard | Users
- Course Detail | Project
- Projects | Create form
- Dark mode | Responsive Design
git clone https://github.com/Isacco-B/Start2Impact_Progetto_Finale_FullStack.git
- Set the following environment variables in the api folder:
NODE_ENV= //development
PORT= //3000
DB_HOST= //mongodb://localhost:27017/dbName
#require("crypto").randomBytes(64).toString("hex")
JWT_SECRET= //34bcb60ebf3953b598e56519e3718b930b7c2c6da629c63d0cf778a3338640459852b27edb2c165fe7484e71027353ca3880c12ecbd7d288e26092
ACCESS_TOKEN_SECRET= //9e9e24b156eddc2afc88c8f155a79904e09114a088b7173114c23c2e85475c5be709865c0b499fd658f481dfb8b3be9cf55a11760cf2ecfdfc93ef
REFRESH_TOKEN_SECRET= //68c25dc9f1c719b5bfd24df765db7fcb64fcb2bb26e6fb5edf265dd10529a34d5450f6643c34c044942954fe7822d1117d7a11c37bef883af4cce1e3f8
PASSWORD_TOKEN_SECRET= //5dc9417ba2592647ac735fd99d9ba27ad52b40473dfab2bcd65df4bd2d916c55b1955dd7d763cc2576e2a98a427e0df9843c8106faea597e82466be2a8f8
EMAIL_HOST= //yourSMTP
EMAIL_NAME= //yourDomain
EMAIL_ADDRESS= //yourDomain
EMAIL_PASSWORD= //yourPassword
EMAIL_PORT= //465
EMAIL_SECURITY= //STARTTLS
- Set the following environment variables in the client folder:
NODE_ENV=development
npm install
npm run dev