ShikshaMudra is a full-stack MERN application built as a hyperlocal, peer-to-peer skill exchange platform.
It connects Gurus (experts/teachers) with Shishyas (learners), fostering community-driven knowledge sharing through location-based discovery, booking, and real-time communication.
- ✨ Features
- 🛠️ Tech Stack
- 🚀 Getting Started
- 📸 Screenshots
- 📊 Technical Architecture
- 🛤️ Roadmap
- 🤝 Contributing
- 🛡️ License
- 👨💻 Author
- Role-based system: Guru (teacher) / Shishya (learner).
- Secure authentication using JWT.
- Passwords encrypted with bcrypt.js.
- Middleware ensures protected & authorized routes.
- Full CRUD on skills.
- Create structured workshops with title, duration, rate, seats, and mode (Online/Offline).
- Upload images & videos with Cloudinary.
- Location-aware listings with geospatial search support.
- Keyword-based search for skills.
- Geospatial “Nearby” search using MongoDB
$geoWithinand$centerSphere.
- Direct session booking (hackathon version bypassed payments).
- Prevents duplicate bookings.
- Ratings (⭐1–5) + written reviews with live average rating updates.
- Socket.IO-powered chat between Gurus and Shishyas.
- Auto-generated contact lists with role-based filtering.
- Track KPIs: ⭐ Average Rating, 📖 Total Bookings, 💰 Earnings, 👩🎓 Students.
- Realtime activity list & skill management.
- Monthly earnings graph via Recharts.
Frontend:
- ⚛️ React.js (Vite)
- 🎨 Tailwind CSS + shadcn/ui
- 🗂 Zustand (state management)
- 🎬 Framer Motion (animations)
- 🔗 Axios (API handling)
Backend:
- 🟢 Node.js + Express.js
- 📦 Mongoose (ODM for MongoDB)
- 🔐 JWT + bcrypt.js (Auth & Security)
- 🌐 Socket.IO (Realtime chat)
- 🖼 Multer + Cloudinary (Media handling)
Database:
- 🍃 MongoDB Atlas (with geospatial indexing)
Cross-Cutting Concerns:
- 🛡 Helmet + CORS (Security)
git clone https://github.com/JayP2006/Bharat-Skill-Exchange.git
cd Bharat-Skill-Exchange