- Frontend URL: https://udemy-clone-ron-and-ben-front.onrender.com/
- Backend URL: https://udemy-clone-ron-ben.onrender.com/
- Core:
Express,TypeScript,Mongoose,Socket.IO - Security:
Helmet,JWT,bcrypt,express-rate-limit,cookie-parser - File Handling:
Multer,Sharp - Auth:
Google Auth,JWT - Emails:
Nodemailer - Utils:
UUID,dotenv,faker,winston,morgan
- Core:
React,Vite,TailwindCSS,Redux Toolkit,React Router - UI:
MUI,Radix UI,Heroicons,Lucide,FontAwesome - State:
Redux Persist,TanStack Query - Payments:
PayPal SDK - Media:
Video.js,React Player - Auth:
Google OAuth,jwt-decode
Run this in both frontend and backend directories:
npm installCreate a .env file in the frontend root directory with:
VITE_CLIENT_ID=""
VITE_PAYPAL_CLIENT_ID=""
VITE_SECRET_KEY_PAYPAL=""
VITE_NODE_ENV=""
VITE_BASE_URL=""
VITE_LOCALHOST=""
VITE_GOOGLE_CLIENT_ID=""
VITE_AI_TOKEN=""Create a .env file in the backend root directory with:
PORT=""
DB_URI=""
JWT_SECRET=""
BCRYPT_PW=""
JWT_EXPIRES_IN=""
NODE_ENV=""
EMAIL_USER=""
EMAIL_KEY=""
GOOGLE_CLIENT_ID=""
GOOGLE_CLIENT_SECRET=""Once the .env files are configured and dependencies installed:
# Frontend
npm run dev
# Backend
npm run start:dev