A comprehensive career counseling and academic guidance platform aligned with India's NEP 2020 policy, helping students make informed educational and career decisions through AI-powered analytics and personalized recommendations.
- Performance Tracking: Multi-class academic progress monitoring (Classes 9-12)
- Visual Analytics: Interactive charts and graphs using Recharts
- PDF Reports: Professional academic reports with jsPDF integration
- Trend Analysis: Grade progression and improvement tracking
- College Prediction: ML-based college recommendations using JEE ranks
- Subject Analysis: Performance-based career path suggestions
- Personalized Recommendations: Tailored educational guidance
- Scholarship Discovery: Curated scholarship opportunities with search
- Personal Information Management: Secure student data handling
- Educational Records: Detailed academic history tracking
- Extra-curricular Activities: Holistic student development tracking
- Goal Setting: Academic and career milestone planning
- JWT Authentication: Secure user authentication and authorization
- Data Protection: Encrypted student information storage
- Role-based Access: Differentiated access for students and counselors
CareerMap/
โโโ ๐ฅ๏ธ client/ # React.js Frontend
โโโ โ๏ธ backend/ # Node.js/Express API
โโโ ๐ค ML Backend/ # Python/Flask ML Services
โโโ ๐ Database/ # MongoDB Collections
- Framework: React 18.3.1 with Redux Toolkit
- Routing: React Router DOM 6.28.0
- Forms: React Hook Form 7.53.2
- UI Components: Lucide React, MDB React UI Kit
- Charts: Chart.js 4.4.6 with React-ChartJS-2
- PDF Generation: jsPDF 2.5.2 with AutoTable
- Animations: Framer Motion 11.11.0
- Runtime: Node.js with Express.js 4.21.1
- Database: MongoDB with Mongoose 8.8.1
- Authentication: JWT (jsonwebtoken 9.0.2)
- Security: bcryptjs 2.4.3 for password hashing
- CORS: Cross-Origin Resource Sharing enabled
- Framework: Flask with Flask-CORS
- Data Processing: Pandas for data manipulation
- Machine Learning: Scikit-learn for college prediction models
- Web Scraping: Google Search Python for scholarship data
- Node.js (v14.0.0 or later)
- Python (v3.8 or later)
- MongoDB (v4.4 or later)
- npm or yarn package manager
-
Clone the repository
git clone https://github.com/CyberMage7/CareerMap.git cd CareerMap -
Set up the Backend
cd backend npm install # Install Python dependencies pip install -r requirements.txt # Create .env file with your configuration cp .env.example .env
-
Set up the Frontend
cd ../client npm install -
Start the Services
Terminal 1 - MongoDB
mongod
Terminal 2 - Node.js Backend
cd backend npm run serverTerminal 3 - Python ML Service
cd backend python app.pyTerminal 4 - React Frontend
cd client npm start -
Access the Application
- Frontend: http://localhost:3000
- Node.js API: http://localhost:5000
- Python ML API: http://localhost:4000
- Registration/Login โ Secure account creation with JWT authentication
- Personal Information โ Basic demographic and contact details
- Educational Details โ Academic records across multiple classes
- Performance Analysis โ AI-powered insights and recommendations
- College Prediction โ ML-based college suggestions with JEE integration
- Scholarship Discovery โ Personalized scholarship opportunities
- Dashboard Analytics โ Comprehensive academic overview with PDF reports
/dashboard- Main analytics hub with performance overview/personal-info- Personal information management/education-details- Academic records input and tracking/college-prediction- ML-powered college recommendations/scholarships- Scholarship search and discovery/reports- PDF report generation and download
// Personal Information
PersonalModel: {
userId: ObjectId,
fullName: String,
email: String,
phone: String,
dateOfBirth: Date,
address: Object,
createdAt: Date
}
// Educational Records
EducationDetailsModel: {
userId: ObjectId,
class: String,
subjects: [String],
marks: [Number],
totalMarks: Number,
percentage: Number,
year: Number
}
// Additional Details
ExtraDetailsModel: {
userId: ObjectId,
hobbies: [String],
skills: [String],
achievements: [String],
careerInterests: [String]
}Create a .env file in the backend directory:
# Database
MONGO_URI=mongodb://localhost:27017/careermap
DB_NAME=careermap
# JWT Configuration
JWT_SECRET=your_jwt_secret_key_here
JWT_EXPIRE=30d
# Server Configuration
NODE_ENV=development
PORT=5000
# Python ML Service
PYTHON_ML_URL=http://localhost:4000
# CORS Configuration
CLIENT_URL=http://localhost:3000POST /api/users/register- User registrationPOST /api/users/login- User authenticationGET /api/users/profile- Get user profile
POST /api/users/personal- Create/Update personal infoGET /api/users/getpersonal- Retrieve personal information
POST /api/users/education- Submit educational detailsGET /api/users/geteducation- Fetch academic records
POST /api/colleges- College prediction based on JEE rankGET /api/scholarships- Scholarship recommendations
cd client
npm testcd backend
npm testImport the Postman collection from /docs/postman_collection.json
- Page Load Time: < 2 seconds
- API Response Time: < 500ms average
- Database Query Performance: Optimized with indexing
- Mobile Responsiveness: 100% responsive design
- Accessibility: WCAG 2.1 AA compliant
We welcome contributions! Please see our Contributing Guidelines for details.
- Fork the repository
- Create a 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 ISC License - see the LICENSE file for details.
- Vishwas and Party - Development Team
- CyberMage7 - Project Maintainer
- NEP 2020 - National Education Policy inspiration
- React Community - Frontend framework and ecosystem
- MongoDB - Database solutions
- Open Source Contributors - Various libraries and tools
For support, email vishwas@careermap.com or join our Slack channel.
- Mobile App Development (React Native)
- Advanced ML Models for Career Prediction
- Integration with Government Education APIs
- Real-time Chat Support
- Parent Dashboard Portal
- Multilingual Support
- Offline Mode Capabilities