Semester 4 Mini‑Project (Web Development)
Your All‑in‑One Digital Campus
EduWorld is a MERN‑stack web application that streamlines campus life for students and teachers alike. It provides:
- Railway Concession: Students can apply for concession passes.
- Notes App: Teachers upload PDFs; students browse and download organized by year/subject/branch.
- E‑Calendar: Class‑specific events (tests, schedule changes) managed by teachers.
- Code Editor: In‑browser editor with AI‑powered code review suggestions.
- Canteen Ordering: Students place orders; backend generates a random order number & total, and Twilio WhatsApp notifies when ready.
- Role‑Based Portals: Single User schema with a
rolefield determines student or teacher portal.
Watch a short video walkthrough of EduWorld:
Screen.Recording.2025-04-27.at.7.mp4
EduWorld unifies essential campus services into a single platform. Built on the MERN stack (MongoDB, Express.js, React, Node.js) and styled with Tailwind CSS & Material UI, it features secure JWT‑based authentication, Cloudinary file storage, and Twilio WhatsApp API integration for order notifications.
- Role‑Based Auth: JWT‑cookie middleware, signup/login flows, route guards.
- Notes Upload & Access: Cloudinary PDF uploads for teachers; filtered retrieval for students.
- Calendar Management: Teacher event creation & student view via FullCalendar.
- In‑Browser Code Editor: AI‑review suggestions powered by Axios calls.
- Canteen Ordering Flow: Frontend placeOrder logic → backend orderNumber & total calculation → Twilio WhatsApp “ready” alert.
- Responsive UI: Mobile‑first layouts with Tailwind & Material UI.
- React.js (Vite)
- Tailwind CSS & Material UI
- React Router DOM
- FullCalendar (daygrid, timegrid, interaction)
- GSAP & Lottie (animations)
- Axios (HTTP requests)
- Node.js & Express.js
- Twilio SDK (WhatsApp notifications)
- MongoDB (MongoDB Atlas)
- Mongoose
- JWT (jsonwebtoken)
- bcrypt.js
- dotenv
- Multer (file upload)
- Cloudinary (PDF storage)
- Designed and implemented Student & Teacher portals (layout, nested routing, navigation)
- Developed Notes section: file upload form, backend routes, student retrieval UI
- Built Role‑based authentication: JWT token creation, cookie verification, route protection
- Integrated E‑Calendar: date‑click form modal, backend event CRUD, FullCalendar rendering
- Implemented Canteen flow: order schema & routes, random orderNumber generator, frontend placeOrder, Twilio WhatsApp API notification logic
git clone https://github.com/<your‑username>/eduworld.git
cd eduworldcd backend
npm installCreate a .env file with:
ATLASDB_URL=your‑mongodb‑uri JWT_TOKEN_KEY=your‑jwt‑secret CLOUD_NAME=… CLOUD_API_KEY=… CLOUD_API_SECRET=… TWILIO_ACCOUNT_SID=… TWILIO_AUTH_TOKEN=… TWILIO_WHATSAPP_FROM=whatsapp:+1234567890
Start the server:
node app.jscd ../frontend
npm install
npm run devThen open your browser to: http://localhost:5173