EduSphere is a comprehensive MERN stack-based educational platform that connects students with expert teachers, facilitating seamless learning experiences through structured courses and interactive features. The platform consists of both client and server components working together to provide a complete educational solution.
- Email: admin@edusphere.com
- Password: adminEdusphere!0
- Dynamic user roles (Student, Teacher, Admin)
- JWT-based secure authentication system
- Social login integration with Google
- Protected routes and API endpoints
- Role-based authorization middleware
- Token refresh mechanism
- Session management
- Password hashing and security
- Student Dashboard:
- Enrollment tracking
- Assignment submission
- Progress monitoring
- Teacher Dashboard:
- Course management
- Progress monitoring
- Performance tracking
- Admin Dashboard:
- Comprehensive control and oversight
- User role management
- Course approval system
- Dynamic banner/carousel
- Partner/collaborator showcase
- Popular classes section
- Teacher feedback carousel
- Statistics section
- Teacher recruitment section
- Course creation and updates
- Approval workflow
- Enrollment tracking
- Progress monitoring
- Assignment management
- Detailed class cards
- Secure payment integration
- Comprehensive application form
- Multiple teaching categories
- Admin review workflow
- Status tracking
- Request resubmission
- Experience verification
- Stripe payment processing
- Transaction logging
- Payment verification
- Refund handling
- PDF invoice generation
- Creation and management
- Submission handling
- Progress tracking
- Feedback system
- Deadline management
- Enrollment statistics
- User activity metrics
- Course performance analysis
- Progress reporting
- Trend analysis
- Sweet alerts for CRUD operations
- Dynamic loading states
- Responsive design
- User-friendly navigation
- Modal interfaces
- Animation implementations
- React.js 18
- TanStack Query v4
- Firebase Authentication
- Axios
- React Router DOM v6
- Tailwind CSS
- DaisyUI
- React Hook Form
- Sweet Alert 2
- React Rating
- Framer Motion
- jsPDF
- AOS Animation
- Node.js
- Express.js
- MongoDB
- Mongoose
- JSON Web Token
- Cors
- Dotenv
- Express Rate Limit
- Stripe
- Winston (for logging)
- Joi (for validation)
- Clone the client repository
git clone https://github.com/smmaksudulhaque2000/Assignment_12
cd edumanage-client- Install dependencies
npm install- Create
.envfile for client
VITE_apiKey=your_firebase_api_key
VITE_authDomain=your_firebase_auth_domain
VITE_projectId=your_firebase_project_id
VITE_storageBucket=your_storage_bucket
VITE_messagingSenderId=your_messaging_sender_id
VITE_appId=your_app_id
VITE_SERVER_URL=your_server_url- Clone the server repository
git clone https://github.com/yourusername/edumanage-server.git
cd edumanage-server- Install dependencies
npm install- Create
.envfile for server
MONGODB_URI=your_mongodb_uri
JWT_SECRET=your_jwt_secret
STRIPE_SECRET_KEY=your_stripe_secret_key
PORT=5000
CLIENT_URL=your_client_url
REFRESH_TOKEN_SECRET=your_refresh_token_secret
NODE_ENV=developmentPOST /api/auth/login - User login
POST /api/auth/register - User registration
POST /api/auth/refresh-token - Refresh JWT token
GET /api/users - Get all users
GET /api/users/:id - Get user details
PATCH /api/users/:id - Update user role
DELETE /api/users/:id - Delete user
POST /api/classes - Create new class
GET /api/classes - Get all classes
GET /api/classes/:id - Get class details
PATCH /api/classes/:id - Update class status
DELETE /api/classes/:id - Delete class
POST /api/enrollments - Create enrollment
GET /api/enrollments/:userId - Get user enrollments
POST /api/assignments - Create assignment
GET /api/assignments/:classId - Get class assignments
POST /api/assignments/submit - Submit assignment
src/
βββ components/
β βββ shared/
β βββ dashboard/
β βββ home/
βββ pages/
β βββ Home/
β βββ Dashboard/
β βββ Authentication/
βββ hooks/
βββ contexts/
βββ utils/
βββ assets/
βββ routes/
src/
βββ configs/
βββ controllers/
βββ middlewares/
βββ models/
βββ routes/
βββ services/
βββ utils/
βββ validations/
- JWT authentication
- Protected routes
- Request rate limiting
- Input validation and sanitization
- Error handling middleware
- CORS configuration
- Helmet security headers
- MongoDB injection prevention
- XSS protection
- Form validation
- Error boundaries
- Secure data transmission
- Database indexing
- Query optimization
- Connection pooling
- Response caching
- Compression middleware
- Lazy loading of components
- Image optimization
- Code splitting
- Efficient state management
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License