A comprehensive web-based practice platform for GATE and UGC NET exam preparation
The GATE & UGC NET Practice Platform is an educational web application designed to help aspirants prepare effectively for GATE (Graduate Aptitude Test in Engineering) and UGC NET (National Eligibility Test) examinations.
This platform provides structured practice resources, mock tests, and comprehensive performance tracking to enhance conceptual understanding and exam readiness.
🎓 Final Year BCA Project - Developed as part of the Bachelor of Computer Applications curriculum, focusing on real-world problem solving, scalable architecture, and modern web development practices.
- 📚 Subject-wise Question Bank - Practice questions organized by Computer Science, General Aptitude, Mathematics
- 📝 Mock Tests - Timed practice tests simulating real exam environment (10/30/50/100 questions)
- ⏱️ Timed Quizzes - Multiple duration options (10/20/30/60 minutes)
- 📊 Performance Analytics - Detailed reports with score tracking and progress visualization
- 👤 User Dashboard - Personalized dashboard with test history and statistics
- 🔐 Secure Authentication - JWT-based user authentication with encrypted passwords
- ➕ Test Management - Create, update, and delete practice tests
- 👥 User Management - View registered users and their performance
- 📈 Analytics Dashboard - Overview of platform statistics
- 🔒 Admin Authentication - Secure admin login system
GATE-UGCNET-Practice-Platform/
├── Frontend/ # React-based student portal
├── Admin/ # React-based admin panel
├── Backend/ # Node.js/Express REST API server
├── LICENSE # MIT License
└── README.md # This file
| Directory | Description | Tech Stack | Default Port |
|---|---|---|---|
| Frontend | Student-facing practice platform | React 19, Tailwind CSS, Vite | 5173 |
| Admin | Administrator control panel | React 19, Tailwind CSS, Vite | 5174 |
| Backend | RESTful API server | Node.js, Express 5, MongoDB | 8080 |
| Technology | Version | Purpose |
|---|---|---|
| React | 19.2.0 | UI Framework |
| Tailwind CSS | 4.2.1 | Styling |
| React Router DOM | 7.13.1 | Routing |
| Recharts | 3.7.0 | Data Visualization |
| Vite | 7.3.1 | Build Tool |
| React Icons | 5.5.0 | Icon Library |
| Technology | Version | Purpose |
|---|---|---|
| Node.js | Latest | Runtime Environment |
| Express.js | 5.2.1 | Web Framework |
| MongoDB/Mongoose | 9.2.2 | Database & ODM |
| JWT | 9.0.3 | Authentication |
| bcryptjs | 3.0.3 | Password Hashing |
| CORS | 2.8.6 | Cross-Origin Support |
- Node.js (v18 or higher)
- npm or yarn
- MongoDB (local or cloud instance like MongoDB Atlas)
# Navigate to Backend directory
cd Backend
# Install dependencies
npm install
# Create .env file with the following variables:
# MONGODB_URI=mongodb+srv://username:password@cluster.mongodb.net/gate-ugcnet
# PORT=8080
# JWT_SECRET=your_super_secret_jwt_key
# ADMIN_EMAIL=admin@example.com
# ADMIN_PASSWORD=your_admin_password
# Start the backend server
npm start
# Server will run on http://localhost:8080# Navigate to Frontend directory
cd Frontend
# Install dependencies
npm install
# Create .env file:
# VITE_BACKEND_URL=http://localhost:8080
# Start development server
npm run dev
# Frontend will run on http://localhost:5173# Navigate to Admin directory
cd Admin
# Install dependencies
npm install
# Create .env file:
# VITE_BACKEND_URL=http://localhost:8080
# Start development server
npm run dev
# Admin panel will run on http://localhost:5174# Terminal 1 - Backend
cd Backend && npm start
# Terminal 2 - Frontend
cd Frontend && npm run dev
# Terminal 3 - Admin Panel
cd Admin && npm run dev- Node.js (v18 or higher)
- MongoDB (local or cloud instance)
- Git
# Clone the repository
git clone https://github.com/ChandanChaudhary226/GATE-UGCNET-Practice-Platform.git
# Navigate to project directory
cd GATE-UGCNET-Practice-Platformcd Backend
npm install
# Create .env file with:
# PORT=5000
# MONGODB_URI=your_mongodb_connection_string
# JWT_SECRET=your_jwt_secret
# ADMIN_EMAIL=admin@example.com
# ADMIN_PASSWORD=your_admin_password
npm startcd Frontend
npm install
# Create .env file with:
# VITE_BACKEND_URL=http://localhost:5000
npm run devcd Admin
npm install
# Create .env file (similar to Frontend)
npm run dev| Method | Endpoint | Description |
|---|---|---|
| POST | /api/auth/register |
User registration |
| POST | /api/auth/login |
User login |
| POST | /api/admin/login |
Admin login |
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/tests/public/active |
Get all active tests |
| GET | /api/tests/public/:id |
Get test for attempt |
| POST | /api/tests/public/:id/submit |
Submit test answers |
| GET | /api/tests/user/results |
Get user's test results |
| GET | /api/tests/user/stats |
Get user's statistics |
| Method | Endpoint | Description |
|---|---|---|
| POST | /api/tests/create |
Create new test |
| GET | /api/tests/all |
Get all tests |
| PUT | /api/tests/:id |
Update test |
| DELETE | /api/tests/:id |
Delete test |
| GET | /api/users/all |
Get all users |
This project is developed collaboratively as part of the Final Year BCA Project.
| Role | Name | Responsibilities |
|---|---|---|
| Team Lead + Full Stack Lead | Chandan Chaudhary | Project management, Full-stack development, Architecture design |
| Testing & Deployment | Deepanshu Yadav | Quality assurance, Testing, Deployment automation |
| Backend Developer | Ayush Verma | API development, Database design, Server-side logic |
| Frontend & Database | Devendra Jaiswal | UI development, Database integration |
| Documentation & Integration | Divyansh | Documentation, System integration, Code review |
- 🤖 AI-based personalized study recommendations
- 📊 Advanced analytics and ranking system
- 📱 Mobile application version (React Native)
- 📄 Integration of previous years' question papers
- 🏆 Leaderboard and competitive features
- 💬 Discussion forum for doubt clearing
- 📧 Email notifications and reminders
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Faculty mentors and guides at our institution
- React Documentation
- Tailwind CSS
- MongoDB Documentation
- Express.js Documentation
- Online learning resources and the open-source community
Made with ❤️ by Team GATE-UGCNET
⭐ Star this repository if you find it helpful!