A premium, full-stack MERN application designed to manage a dance academy with a cinematic dark-themed UI and powerful administrative capabilities.
- 🎭 Cinematic UI: Beautiful dark theme with glowing gold accents (
#C9A84C) and smooth hover animations. - 🔒 Secure Authentication: Robust JWT-based auth,
bcryptjspassword hashing, and OTP-based password resets. - 📧 Automated Communication: Integrated Nodemailer for personalized HTML emails on application updates and admin replies.
- ⚡ Stateless Architecture: Fully decoupled React frontend and Express REST API backend using centralized Axios interceptors.
Built using the following modern web technologies:
|
React |
TypeScript |
Node.js |
Express |
MongoDB |
CSS3 |
HTML5 |
A seamless, engaging interface for students to discover and enroll in dance courses.
- 🔑 Authentication: Secure Login, Signup, and Forgot Password flow with 6-digit OTP verification.
- 📚 Course Catalog: Browse available dance styles, filter by level, and search dynamically.
- 📝 Enrollment System: Apply for specific courses directly from the platform.
- ✉️ Contact & Enquiries: Send queries directly to the academy with a beautiful contact form.
- 📊 Personal Dashboard: Track application status (Pending, Approved, Rejected) and upcoming class schedules.
A powerful, protected control center for academy staff to manage operations.
- 📈 Stat Dashboard: Real-time metrics for total users, active courses, pending applications, and new messages.
- 👥 User Management: View all registered students and remove accounts if necessary.
- 🎭 Course Management (CRUD): Add, edit, and delete courses dynamically. Changes reflect instantly on the student portal.
- ✅ Application Processing: Approve or reject student applications with one click.
- 💬 Enquiry Management: View and directly reply to student queries from the dashboard.
A highly secure, scalable Express.js API connected to MongoDB Atlas.
- 🛡️ JWT Middleware: Intercepts and verifies tokens to protect admin and user-specific routes.
- 📧 Automated Emails: Nodemailer triggers automated HTML emails when applications are updated or enquiries are replied to.
- 🔐 Password Hashing: Uses
bcryptjsin Mongoose pre-save hooks to secure user credentials. - 🗄️ Axios Integration: Frontend perfectly synced with backend endpoints using centralized API services and global interceptors.