- Frontend: Vercel Deployment (Coming Soon)
- API Docs: Swagger UI (Coming Soon)
ClassEdgee is a comprehensive Smart Classroom Management System designed to revolutionize education through advanced technology. The platform provides a suite of tools for personalized learning, real-time insights, and seamless educational interactions. It aims to enhance the classroom experience for students, faculty, and administrators by offering features such as attendance tracking, schedule management, resource sharing, and performance analytics.
- π AI Face Recognition: State-of-the-art attendance tracking using InsightFace (~99.86% accuracy on LFW benchmark)
- π Interactive Classroom: Real-time quizzes, assignments, and feedback
- π Smart Scheduling: Automated schedule generation and conflict resolution
- π€ Resource Sharing: Faculty can share lecture slides, assignments, and materials
- π Performance Analytics: Detailed insights into student performance and engagement
- π Real-time Notifications: Important updates delivered instantly
βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ
β Frontend β β Main Backend β β Python Backend β
β (Vercel) ββββββΆβ (Railway) ββββββΆβ (Railway) β
β React/Vite β β Express/Prisma β β FastAPI/AI β
βββββββββββββββββββ ββββββββββ¬βββββββββ ββββββββββ¬βββββββββ
β β
βΌ βΌ
βββββββββββββββββββ βββββββββββββββββββ
β PostgreSQL β β Cloudinary β
β (Neon Free) β β (Free Tier) β
βββββββββββββββββββ βββββββββββββββββββ
| Layer | Technologies |
|---|---|
| Frontend | React 18, TypeScript, Tailwind CSS, Vite, Redux Toolkit |
| Main Backend | Node.js, Express, Prisma ORM, PostgreSQL |
| AI Backend | Python 3.10, FastAPI, InsightFace, OpenCV, ONNX Runtime |
| Database | PostgreSQL (Neon - Free Tier) |
| Storage | Cloudinary (Free Tier) |
| Deployment | Vercel (Frontend), Railway (Backends) |
- Node.js 18+
- Python 3.10+
- PostgreSQL 14+ (or Neon account)
- Git
-
Clone the repository
git clone https://github.com/yourusername/classedgee.git cd classedgee -
Setup Environment Variables
cp .env.example .env # Edit .env with your credentials -
Frontend Setup
cd frontend npm install npm run dev -
Main Backend Setup
cd main-backend npm install npx prisma generate npx prisma db push npm run dev -
Python Backend Setup
cd python-backend/app pip install -r requirements.txt uvicorn main:app --reload --port 8000
# Build and run all services
docker-compose up --buildclassedgee/
βββ frontend/ # React + TypeScript + Vite
β βββ src/
β β βββ components/ # Reusable UI components
β β βββ pages/ # Page components
β β βββ services/ # API services
β β βββ store/ # Redux store
β βββ package.json
βββ main-backend/ # Node.js + Express + Prisma
β βββ src/
β β βββ controllers/
β β βββ models/
β β βββ Router/
β β βββ middlewares/
β βββ prisma/
β βββ package.json
βββ python-backend/ # FastAPI + InsightFace
β βββ app/
β βββ routes/
β β βββ face_recognition.py
β β βββ insightface_service.py
β βββ requirements.txt
βββ docker-compose.yml
The system uses InsightFace with the buffalo_s model for:
- Face Detection: RetinaFace with 320x320 input resolution
- Face Recognition: ArcFace with 512-dimensional embeddings
- Performance: ~99.86% accuracy on LFW benchmark
- Optimized for CPU: Works on free-tier cloud (512MB RAM)
- Registration: Students upload 3-5 photos
- Embedding Extraction: InsightFace extracts 512-D face vectors
- Model Storage: Embeddings stored in Cloudinary as pickle files
- Attendance: Real-time video stream matching against registered faces
# Sign up at neon.tech and create a project
# Copy the connection string to your .envcd frontend
vercel --prod# Install Railway CLI
npm install -g @railway/cli
# Deploy Main Backend
cd main-backend
railway up
# Deploy Python Backend
cd python-backend
railway up- User Authentication: Role-based access (student, faculty, admin)
- Dashboard: Personalized views for each role
- Course Management: CRUD operations for courses and content
- Interactive Classroom: Quizzes, assignments, feedback
- Attendance Tracking: AI-powered face recognition
- Resource Sharing: File upload and download
- Performance Analytics: Grades, attendance, engagement metrics Schedule Management:
Automate the creation and management of class schedules. Ensure optimal utilization of resources. Notifications:
Send notifications to students and faculty about important updates, assignments, and class schedules. Non-Functional Requirements Scalability:
The system should be able to handle a large number of users and data without performance degradation. Security:
Ensure secure authentication and authorization mechanisms. Protect user data and privacy. Usability:
Provide an intuitive and user-friendly interface. Ensure easy navigation and accessibility for all users. Performance:
The system should have fast response times and low latency. Ensure efficient handling of real-time interactions. Reliability:
The system should be highly available and reliable. Implement backup and recovery mechanisms. Maintainability:
The codebase should be well-documented and modular. Ensure easy maintenance and updates. System Requirements Frontend:
React TypeScript Tailwind CSS Vite Backend:
Node.js Express Prisma PostgreSQL Python Backend:
FastAPI OpenCV Pydantic Cloudinary Development Environment:
Node.js (v14 or higher) Python (v3.8 or higher) PostgreSQL (v12 or higher) Git Deployment:
Docker Kubernetes (optional) Cloud provider (e.g., AWS, Azure, GCP) By meeting these requirements, the ClassEdgee platform will provide a robust and efficient solution for smart classroom management. Usage For Students Login: Students can log in using their credentials. Dashboard: Access the dashboard to view upcoming classes, assignments, and notifications. Interactive Classroom: Join virtual classrooms, participate in quizzes, and interact with faculty in real-time. Resource Download: Download lecture slides, assignment guidelines, and other educational resources shared by faculty. Performance Tracking: View detailed insights into your performance, including grades, attendance, and engagement metrics. For Faculty Login: Faculty members can log in using their credentials. Dashboard: Access the dashboard to manage classes, view schedules, and track student performance. Create and Manage Courses: Create new courses, add syllabus details, and manage course content. Interactive Classroom: Conduct virtual classes, share resources, and interact with students in real-time. Attendance Tracking: Utilize face recognition technology to automate attendance tracking. Performance Analytics: Monitor student performance and provide feedback. For Administrators Login: Administrators can log in using their credentials. Dashboard: Access the dashboard to manage the entire educational ecosystem. Schedule Management: Automate the creation and management of class schedules. Resource Management: Oversee the sharing of educational resources and ensure optimal utilization. Reports and Analytics: Generate detailed reports on student and faculty performance, attendance, and resource usage. Navigation Home: Access the main landing page with an overview of the platform. About: Learn more about the vision, mission, and key features of ClassEdgee. Notices: Stay updated with the latest notices and announcements. Events: View upcoming events and important dates.