Instrumental Learning Academy is an online platform for learning musical instruments. It provides a user-friendly interface for students to explore various instrument classes, instructors, and purchase classes for learning. The platform supports different roles such as admin, instructor, and student, each with specific functionalities.
- Role-based authentication and authorization using JWT (JSON Web Tokens)
- User Roles:
- Admin: Manages the platform, creates and manages instructors, and monitors class enrollment.
- Instructor: Creates and manages classes, interacts with enrolled students.
- Student: Browses classes, enrolls in classes, purchases classes, and interacts with instructors.
- Class Management:
- Admin and instructors can create and manage classes, set class details (name, description, schedule, price, etc.).
- Instructor Management:
- Admin can create and manage instructors, assign classes to instructors.
- Student Enrollment:
- Students can browse available classes, select classes for enrollment, and interact with instructors for guidance.
- Class Purchase:
- Students can purchase classes securely using integrated payment gateways.
- Payment Gateway Integration:
- Seamless integration with popular payment gateways to facilitate secure and convenient class purchases.
-
Front-end:
- HTML, CSS, JavaScript
- React.js: Front-end JavaScript library for building user interfaces
- Tailwind CSS: Utility-first CSS framework for responsive web design
- React Router: Routing library for React applications
- Axios: Promise-based HTTP client for making API requests
- React Icons: Icon library for React applications
-
Back-end:
- Node.js: JavaScript runtime environment for server-side development
- Express.js: Web application framework for Node.js
- MongoDB: NoSQL database for storing application data
- Mongoose: MongoDB object modeling for Node.js
- JWT: JSON Web Tokens for authentication and authorization
- Stripe: Payment gateway integration for processing online payments