India's AI-powered platform that bridges the gap between education and employment using live job market intelligence and Opportunity Score technology.
Deploy instructions below
skillbridge/
βββ client/ # React frontend (Vite)
β βββ src/
β β βββ components/
β β β βββ auth/ # Login, Register
β β β βββ common/ # Navbar, Loader, Toast
β β β βββ dashboard/ # OpportunityCards, SkillGap, Roadmap, Heatmap
β β β βββ jobs/ # JobCard, JobFilters
β β β βββ mentors/ # MentorCard, BookingModal
β β β βββ assessment/ # AssessmentFlow
β β βββ pages/ # Landing, Dashboard, Jobs, Mentors
β β βββ context/ # AuthContext
β β βββ hooks/ # useAuth, useJobs, useMentors
β β βββ utils/ # api.js, opportunityScore.js
β βββ public/
βββ server/ # Node.js + Express backend
βββ controllers/ # authController, jobController, etc.
βββ models/ # User, Job, Mentor, SkillPath MongoDB models
βββ routes/ # auth, jobs, mentors, skills, users routes
βββ middleware/ # authMiddleware, errorHandler
βββ config/ # db.js
βββ utils/ # opportunityScore.js, seedData.js
βββ data/ # seed JSON files
Layer
Technology
Frontend
React 18 + Vite
Styling
Tailwind CSS
State
Context API + useState
Backend
Node.js + Express
Database
MongoDB + Mongoose
Auth
JWT + bcryptjs
HTTP Client
Axios
π οΈ Setup & Installation
Node.js v18+
MongoDB (local or Atlas)
Git
git clone https://github.com/YOUR_USERNAME/skillbridge.git
cd skillbridge
cd server
npm install
cp .env.example .env
# Edit .env with your MongoDB URI and JWT secret
npm run seed # Seeds sample data
npm run dev # Starts on http://localhost:5000
cd client
npm install
cp .env.example .env
# Edit .env β set VITE_API_URL=http://localhost:5000/api
npm run dev # Starts on http://localhost:5173
π Environment Variables
PORT=5000
MONGO_URI=mongodb://localhost:27017/skillbridge
JWT_SECRET=your_super_secret_key_here
JWT_EXPIRE=7d
NODE_ENV=development
VITE_API_URL=http://localhost:5000/api
Method
Endpoint
Description
POST
/api/auth/register
Register new user
POST
/api/auth/login
Login user
GET
/api/auth/me
Get current user
Method
Endpoint
Description
GET
/api/skills/opportunities
Get all opportunity scores
GET
/api/skills/heatmap
Get saturation heatmap
GET
/api/skills/gap/:userId
Get user skill gap
POST
/api/skills/assessment
Submit assessment answers
Method
Endpoint
Description
GET
/api/jobs
Get all jobs (with filters)
GET
/api/jobs/:id
Get single job
GET
/api/jobs/matches/:userId
Get matched jobs for user
Method
Endpoint
Description
GET
/api/mentors
Get all mentors
GET
/api/mentors/:id
Get mentor profile
POST
/api/mentors/book
Book a session
Method
Endpoint
Description
GET
/api/users/profile
Get user profile
PUT
/api/users/profile
Update user profile
GET
/api/users/roadmap
Get user roadmap
π§ Core Innovation: Opportunity Score
Opportunity Score = (Job Openings / Active Learners) Γ Growth Velocity Γ Location Weight
Score > 7.0 β High Opportunity π’
Score 4.0-7.0 β Moderate π‘
Score < 4.0 β Saturated π΄
Student β Takes assessment, follows roadmap, applies for jobs
Employer β Posts jobs, views verified candidate profiles
Mentor β Offers paid sessions, builds reputation
College β Views placement analytics dashboard
Push to GitHub
Create new Web Service on render.com
Set build command: cd server && npm install
Set start command: node server.js
Add environment variables
Import GitHub repo on vercel.com
Set root directory to client
Add VITE_API_URL environment variable
Deploy
MIT β free to use for your final year project
Built with β€οΈ to solve India's real skill-employment gap