This project is a full-stack course marketplace similar to Udemy. It enables students to enroll in courses upon payment, allows teachers to add new courses, and empowers admins to oversee and moderate all activities. The platform ensures a seamless and secure experience for learners and educators alike, offering robust features for course management
- Responsive design for mobile, tablet, and desktop.
- Secure authentication with JWT.
- Dynamic homepage with banners, partners, popular classes, and statistics.
- Detailed class pages with enrollment and payment integration.
- Comprehensive dashboards for students, teachers, and admins.
- CRUD operations with custom notifications.
- Teacher application and approval workflow.
- Class and user management by admin.
- Feedback and rating system.
- Search functionality and pagination.
- Node.js (v14.x or later)
- npm (v6.x or later)
-
Clone the repository:
git clone https://github.com/iamcharlie17/class-edge-client.git
-
Navigate to the project directory:
cd class-edge-client
-
Install dependencies:
npm install
-
Set up environment variables:
- Create a
.env
file in the root directory. - Add the following variables (replace with your actual values):
REACT_APP_API_URL=your_api_url REACT_APP_FIREBASE_API_KEY=your_firebase_api_key REACT_APP_FIREBASE_AUTH_DOMAIN=your_firebase_auth_domain REACT_APP_FIREBASE_PROJECT_ID=your_firebase_project_id REACT_APP_FIREBASE_STORAGE_BUCKET=your_firebase_storage_bucket REACT_APP_FIREBASE_MESSAGING_SENDER_ID=your_firebase_messaging_sender_id REACT_APP_FIREBASE_APP_ID=your_firebase_app_id REACT_APP_JWT_SECRET=your_jwt_secret
- Create a
-
Run the development server:
npm start
-
Build for production:
npm run build