ElectiveHub is a comprehensive full-stack web application designed to streamline course selection and management for elective subjects. Built with modern technologies like React, Node.js, and Prisma, it provides students and faculty with a secure and efficient platform to browse, select, and manage elective courses. The system features real-time updates, intuitive interfaces, and robust backend services to ensure a seamless course selection experience.
ElectiveHub.mp4
ElectiHub/
├── frontend/ # React + Vite + TypeScript frontend
├── backend/ # Node.js + Prisma backend
- Node.js (v16 or later)
- pnpm (Package Manager)
-
Clone the repository
git clone https://github.com/hsanirudh/ElectiveHub cd ElectiHub
-
Frontend Setup
cd frontend pnpm install pnpm dev
-
Backend Setup
cd backend pnpm install # Setup your environment variables cp .env.example .env # Run Prisma migrations pnpm prisma migrate dev # Start the server pnpm dev
- React
- TypeScript
- Vite
- Tailwind CSS
- Node.js
- Express
- Prisma (ORM)
- PostgreSQL
The project includes Docker support for all components:
# Build and run all services
docker-compose up --build
# Run individual services
docker-compose up frontend
docker-compose up backend
Create .env
files in frontend and backend directories by referring to the example given in the repository
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add some amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request