A full-stack MERN application for managing student placements, internships, skills, and recruitment data with role-based dashboards for students and faculty.
Frontend: https://mongodb-r8l3.vercel.app/
Backend API: https://mongodb-ihbj.onrender.com
- π Secure registration and JWT-based authentication
- π Personal dashboard with analytics
- πΌ Manage skills, certifications, and experience
- π Track interview schedules and outcomes
- π― Apply for internships and placements
- π View placement statistics
- π₯ View all registered students
- π Manage recruiters and job postings
- π Real-time placement analytics
- π Track student progress
- π Query management system
- π Generate reports
- π’ Recruiter management (add, edit, delete)
- π Interview scheduling
- πΌ Placement record management
- π Internship opportunity posting
- π Comprehensive analytics
- React.js - UI library
- React Router - Client-side routing
- Axios - HTTP requests
- CSS3 - Styling with glassmorphism effects
- Node.js - Runtime environment
- Express.js - Web framework
- MongoDB - NoSQL database
- Mongoose - ODM for MongoDB
- JWT - Authentication
- bcrypt.js - Password hashing
- Frontend: Vercel
- Backend: Render
- Database: MongoDB Atlas
placement-tracker/ βββ Backend/ β βββ controllers/ # Business logic β β βββ authController.js β β βββ studentController.js β β βββ facultyController.js β β βββ skillController.js β β βββ interviewController.js β β βββ placementController.js β β βββ internshipController.js β β βββ recruiterController.js β βββ models/ # Database schemas β β βββ User.js β β βββ Student.js β β βββ Faculty.js β β βββ Skill.js β β βββ Interview.js β β βββ Placement.js β β βββ Internship.js β β βββ Recruiter.js β βββ routes/ # API endpoints β βββ middleware/ # Auth & validation β βββ config/ # Configuration β βββ server.js # Entry point β βββ Frontend/ β βββ public/ β βββ src/ β β βββ components/ # React components β β βββ pages/ # Page components β β βββ services/ # API service layer β β βββ App.js β βββ package.json β βββ README.md
- Node.js (v18.x or higher)
- MongoDB Atlas account
- npm or yarn
-
Clone the repository git clone https://github.com/Divya07-22/mongodb.git cd mongodb
-
Backend Setup cd Backend npm install
Create .env file echo "MONGODB_URI=your_mongodb_connection_string" > .env echo "JWT_SECRET=your_jwt_secret_key" >> .env echo "PORT=5000" >> .env
Start backend server npm start
- Frontend Setup cd Frontend npm install
Start frontend development server npm start
The application will be running at:
- Frontend:
http://localhost:3000 - Backend:
http://localhost:5000
POST /api/auth/register- Register new userPOST /api/auth/login- User login
GET /api/students- Get all studentsGET /api/students/:id- Get student by IDPUT /api/students/:id- Update studentDELETE /api/students/:id- Delete student
POST /api/skills- Add skillGET /api/skills/student/:usn- Get student skillsDELETE /api/skills/:id- Delete skill
POST /api/placements- Add placementGET /api/placements- Get all placementsGET /api/placements/student/:usn- Get student placements
POST /api/interviews- Schedule interviewGET /api/interviews/student/:usn- Get student interviewsPUT /api/interviews/:id- Update interview status
POST /api/internships- Add internshipGET /api/internships- Get all internshipsGET /api/internships/student/:usn- Get student internships
MONGODB_URI=mongodb+srv://username:password@cluster.mongodb.net/placementTracker JWT_SECRET=your_secret_key_here PORT=5000
REACT_APP_API_URL=https://mongodb-ihbj.onrender.com/api
- JWT-based secure authentication
- Role-based access control (Student/Faculty)
- Password hashing with bcrypt
- Protected routes
- Normalized MongoDB schemas
- Referential integrity with student USN
- Efficient data relationships
- Indexed queries for performance
- Component-based React design
- Centralized API service layer
- LocalStorage for session management
- Responsive UI with glassmorphism
- Continuous deployment from GitHub
- Environment variable management
- Production-ready build optimization
- CORS configuration
- email, password (hashed), role (student/faculty)
- studentname, usn (unique), email, phone, department, year
- Links to Skills, Interviews, Placements, Internships
- student (USN), skillName, proficiency, yearsOfExperience
- student (USN), company, position, date, status
- student (USN), company, position, package, offerDate
- student (USN), company, position, duration, startDate
- 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 open source and available under the MIT License.
Divya V
- GitHub: @Divya07-22
- Project Link: https://github.com/Divya07-22/mongodb
- Built with MERN stack
- Deployed on Vercel & Render
- Database hosted on MongoDB Atlas
β Star this repository if you find it helpful!
Live Demo: https://mongodb-r8l3.vercel.app/