All feature demonstrations are available as video files in the Google Drive Demo Folder:
EduWorld is a modern, full-stack educational platform designed to connect students, faculty, and administrators in a seamless, interactive environment. With a focus on global recognition, career success, and innovative learning, EduWorld offers a comprehensive suite of features for admissions, course management, enquiries, and more.
- Interactive Chatbot: 24/7 support for admissions, fees, scholarships, campus info, and more. Guides users through application and enquiry processes.
- Call Button: Instantly connect with support or admissions via a floating call button on every page.
- Modern Sliders & Popups: Engaging hero sliders, welcome popups, and user-type selection popups for a dynamic, interactive experience.
- Applications & Enquiries: Students can easily submit applications and enquiries online, track their status, and receive timely updates.
- Faculty/Admin Dashboards: Faculty and admins can view, manage, and respond to applications and enquiries in real time.
- Course Catalog: Browse detailed undergraduate and postgraduate programs, with filters, highlights, and badges.
- Analytics Dashboard: Real-time stats for admins and faculty, including application trends and student demographics.
- Secure Authentication: JWT-based login, role-based access, and secure data handling.
- Multi-Channel Support: Contact via phone, email, WhatsApp, or instant enquiry forms.
eduworld/
βββ backend/
β βββ config/
β β βββ db.js # MongoDB connection setup
β βββ controllers/
β β βββ applicationsController.js # Application logic
β β βββ authController.js # Auth logic
β β βββ dashboardController.js # Dashboard stats
β β βββ enquiriesController.js # Enquiry logic
β βββ middleware/
β β βββ middleware.js # Auth & other middleware
β βββ models/
β β βββ Application.js # Application schema
β β βββ Enquiry.js # Enquiry schema
β β βββ User.js # User schema
β βββ routes/
β β βββ applicationsRoutes.js
β β βββ authRoutes.js
β β βββ dashboardRoutes.js
β β βββ enquiriesRoutes.js
β βββ server.js # API entry point
β βββ package.json # Backend dependencies
β
βββ frontend/
β βββ src/
β β βββ components/
β β β βββ chat/
β β β β βββ ChatBot.jsx # Main chatbot UI
β β β β βββ chatbotData.js # Chatbot Q&A logic
β β β βββ common/
β β β β βββ CallButton.jsx # Floating call button
β β β β βββ CallToAction.jsx # CTA banners
β β β β βββ Footer.jsx # App footer
β β β β βββ Header.jsx # App header/nav
β β β β βββ HeroSection.jsx # Hero/slider section
β β β β βββ WelcomePopup.jsx # Welcome popup
β β β βββ forms/
β β β β βββ ApplicationForm.jsx # Student application form
β β β β βββ AuthForm.jsx # Login/register form
β β β β βββ EnquiryForm.jsx # Enquiry form
β β β β βββ UserTypePopup.jsx # User type selection popup
β β β βββ ui/
β β β β βββ Toast.jsx # Toast notifications
β β βββ pages/
β β β βββ About.jsx
β β β βββ Contact.jsx
β β β βββ Courses.jsx
β β β βββ Enquiry.jsx
β β β βββ Home.jsx
β β β βββ Login.jsx
β β β βββ Register.jsx
β β β βββ faculty/
β β β β βββ Applications.jsx # Faculty view of applications
β β β β βββ Dashboard.jsx # Faculty dashboard
β β β β βββ Enquiries.jsx # Faculty view of enquiries
β β β βββ student/
β β β β βββ Apply.jsx # Student application page
β β β β βββ Dashboard.jsx # Student dashboard
β β β β βββ Status.jsx # Application status
β β βββ App.jsx # Main app component
β β βββ main.jsx # Entry point
β β βββ App.css, index.css # Styles
β β βββ ...
β βββ index.html
β βββ package.json # Frontend dependencies
β βββ tailwind.config.js, vite.config.js, eslint.config.js
β
βββ package.json # Monorepo scripts
βββ README.md
- Clone the Repo
git clone https://github.com/darshan-gowdaa/eduworld-fullstack.git cd eduworld-fullstack - Install Dependencies
npm run setup
- Configure Environment
- Copy
.env.exampleto.envinbackend/and fill in your MongoDB URI and JWT secret.
- Copy
- Run the App (Dev Mode)
npm start
- Frontend: http://localhost:5173
- Backend API: http://localhost:5000/api
POST /api/auth/registerβ Register new userPOST /api/auth/loginβ LoginGET /api/auth/meβ Get current user (JWT required)
POST /api/applications/β Submit application (JWT required)GET /api/applications/β List all applications (JWT required)GET /api/applications/mineβ Get my application (JWT required)
POST /api/enquiries/β Submit enquiryGET /api/enquiries/β List all enquiries (JWT required)
GET /api/dashboard/statsβ Get dashboard stats (JWT required)
- User: Students, faculty, admins (role-based)
- Application: Student applications for admission
- Enquiry: General or course-specific questions
- Student application & enquiry flows
- Faculty/admin dashboards
- Interactive chatbot
- Call button, popups, and modern UI
EduWorld: Transforming education, empowering futures.

