Welcome to the learning hub of ClassSync-GSSOC!
This guide will help you explore the tools and technologies used in this project and give you a roadmap to learn them efficiently — even if you're just getting started 🚀
ClassSync is a monorepo with clear separation between frontend and backend:
ClassSync/
├── backend/ # Node.js, Express, MongoDB REST API
├── frontend/ # React, Vite, Tailwind CSS SPA
└── LEARN.md # (You are here)
- Frontend: Modern SPA with role-based routing, dashboards, and real-time charts
- Backend: Secure REST API with authentication, scheduling, leave, and substitution logic
| Area | Technologies & Tools |
|---|---|
| 🌐 Frontend | React.js, TailwindCSS |
| 🔧 Backend | Node.js, Express.js, MongoDB, Mongoose |
| 🔐 Auth | JSON Web Tokens (JWT), bcrypt |
| 📦 Dev Tools | Git, GitHub, dotenv, ESLint |
| 🌍 Hosting | Yet to be deployed (frontend likely on Vercel and backend likely on Render) |
Here’s a beginner-friendly order to learn the key technologies used in ClassSync:
- ✅ Git & GitHub basics
- ✅ Basic HTML, CSS, JavaScript
- 🔹 React.js (Components, Props, State, useEffect)
- 🔹 Tailwind CSS (Utility-first styling)
- 🔹 Axios (Making API calls)
- 🔸 Node.js (Server-side JavaScript)
- 🔸 Express.js (Building REST APIs)
- 🔸 MongoDB & Mongoose (NoSQL DB + ODM)
- 🔸 JWT + bcrypt (Authentication)
- 🔹 Jest (Unit testing)
- 🔹 React Testing Library (Frontend testing)
💡 Remember, you don’t need to know everything upfront. Pick a small issue, get your hands dirty, and ask questions!
Every contribution — from fixing typos to building full features — helps you level up 💪
Lastly we believe in learning by building. By contributing to ClassSync, you’ll not only gain technical skills but also confidence, mentorship, and a supportive community behind you.
Let’s grow together through open source ❤️
— ClassSync-GSSOC