Skip to content

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.

Notifications You must be signed in to change notification settings

darshan-gowdaa/eduworld-fullstack

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

10 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

EduWorld 🌍

⚠️ Disclaimer: This project is not affiliated with any real educational institution or company. EduWorld is a portfolio project created solely to showcase my full-stack development skills. All names, features, and content are for demonstration purposes only.

Watch the Demo

ScreenShots:

Landing Page

image

Footer

image

UI Sneak Peak πŸ‘€

image

Working of ChatBot

Login Pages

image image

Dashboard & Forms

image image image image image

πŸŽ₯ Demo Videos

All feature demonstrations are available as video files in the Google Drive Demo Folder:


πŸš€ Overview

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.


✨ Key Features

  • 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.

πŸ› οΈ Tech Stack


πŸ“¦ Folder Structure

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

⚑ Getting Started

  1. Clone the Repo
    git clone https://github.com/darshan-gowdaa/eduworld-fullstack.git
    cd eduworld-fullstack
  2. Install Dependencies
    npm run setup
  3. Configure Environment
    • Copy .env.example to .env in backend/ and fill in your MongoDB URI and JWT secret.
  4. Run the App (Dev Mode)
    npm start

πŸ”— API Overview

Auth

  • POST /api/auth/register β€” Register new user
  • POST /api/auth/login β€” Login
  • GET /api/auth/me β€” Get current user (JWT required)

Applications

  • POST /api/applications/ β€” Submit application (JWT required)
  • GET /api/applications/ β€” List all applications (JWT required)
  • GET /api/applications/mine β€” Get my application (JWT required)

Enquiries

  • POST /api/enquiries/ β€” Submit enquiry
  • GET /api/enquiries/ β€” List all enquiries (JWT required)

Dashboard

  • GET /api/dashboard/stats β€” Get dashboard stats (JWT required)

πŸ—οΈ Main Entities

  • User: Students, faculty, admins (role-based)
  • Application: Student applications for admission
  • Enquiry: General or course-specific questions

πŸ—ΊοΈ Roadmap

  • Student application & enquiry flows
  • Faculty/admin dashboards
  • Interactive chatbot
  • Call button, popups, and modern UI

πŸ“¬ Contact & Community


πŸ… Badges

GitHub last commit GitHub issues GitHub stars


EduWorld: Transforming education, empowering futures.

About

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.

Resources

Stars

Watchers

Forks

Languages