A comprehensive web application for managing student academic data, providing ML-powered performance predictions, and facilitating communication between students, faculty, and administrators. Designed for educational institutions seeking intelligent performance analytics.
- Students - Access grades, attendance, and performance predictions
- Faculty - Manage courses, grades, and student assessments
- Tutors - Support student learning and track progress
- Administrators - Full system control and analytics
- Real-time Monitoring - Track marks and attendance instantly
- Historical Analysis - View performance trends over time
- Goal Setting - Set and track academic targets
- Mobile Responsive - Access data anywhere, anytime
- Performance Predictions - AI-powered exam score forecasting
- Risk Detection - Identify at-risk students early
- Smart Recommendations - Personalized improvement suggestions
- Trend Analysis - Advanced analytics and insights
- Low Attendance Alerts - Automatic warnings for poor attendance
- Performance Warnings - Early intervention for struggling students
- Email Integration - Automated notification delivery
- Real-time Updates - Instant alerts for important events
- PDF Reports - Professional report cards and transcripts
- Performance Insights - Detailed analytics and visualizations
- Progress Reports - Comprehensive academic summaries
- Batch Processing - Generate multiple reports efficiently
- Glassmorphism Design - Beautiful, modern interface
- Smooth Animations - Polished user interactions
- Dark Mode Support - Easy on the eyes
- Fully Responsive - Perfect on all devices
Before you begin, ensure you have the following installed:
# 1οΈβ£ Clone the repository
git clone <repository-url>
cd vision-grade
# 2οΈβ£ Install all dependencies
npm run install:all
# 3οΈβ£ Set up environment variables
# Backend
cp backend/.env.example backend/.env
# Edit backend/.env with your database credentials
# ML Service
cp ml-service/.env.example ml-service/.env
# Edit ml-service/.env with your configuration
# 4οΈβ£ Set up the database
createdb visiongrade_db
# Run migrations
cd backend
npm run migrate
# 5οΈβ£ Create admin account (Choose one method)
# Quick setup with defaults (Development)
node scripts/create-default-admin.js
# Default Credentials: admin@visiongrade.com / Admin@123
# OR Interactive setup (Production)
node scripts/create-first-admin.js# Start all services at once
npm run dev
# Or start individually:
npm run dev:frontend # Frontend β http://localhost:3000
npm run dev:backend # Backend β http://localhost:5000
npm run dev:ml # ML API β http://localhost:8000- Frontend: http://localhost:3000
- Backend API: http://localhost:5000
- ML Service: http://localhost:8000
cd backend
node scripts/create-default-admin.jsDefault Credentials: admin@visiongrade.com / Admin@123
cd backend
node scripts/create-first-admin.jsFollow the interactive prompts to create a secure admin account.
π Documentation:
π¦ vision-grade/
βββ π frontend/ # React.js frontend
β βββ π src/
β β βββ π components/ # Reusable components
β β β βββ π Dashboard.jsx # Main dashboard
β β β βββ π StudentCard.jsx # Student info cards
β β β βββ π GradeTable.jsx # Grade display table
β β β βββ π NotificationBell.jsx # Alert system
β β βββ π pages/ # Page components
β β β βββ π Login.jsx # Authentication page
β β β βββ π StudentDashboard.jsx
β β β βββ π FacultyDashboard.jsx
β β β βββ π AdminPanel.jsx
β β βββ π hooks/ # Custom hooks
β β β βββ π useAuth.js # Authentication hook
β β β βββ π usePerformance.js # Performance data hook
β β βββ π services/ # API services
β β β βββ π authService.js # Auth API calls
β β β βββ π studentService.js # Student API calls
β β β βββ π mlService.js # ML predictions
β β βββ π utils/ # Utility functions
β β βββ π dateFormatter.js # Date utilities
β β βββ π gradeCalculator.js # Grade calculations
β βββ π package.json
βββ π backend/ # Node.js/Express backend
β βββ π controllers/ # Route handlers
β β βββ π authController.js # Authentication logic
β β βββ π studentController.js # Student operations
β β βββ π gradeController.js # Grade management
β βββ π middleware/ # Custom middleware
β β βββ π authenticate.js # JWT verification
β β βββ π authorize.js # Role-based access
β β βββ π errorHandler.js # Error management
β βββ π models/ # Sequelize models
β β βββ π User.js # User model
β β βββ π Student.js # Student model
β β βββ π Course.js # Course model
β β βββ π Grade.js # Grade model
β βββ π routes/ # API routes
β β βββ π auth.js # Auth endpoints
β β βββ π students.js # Student endpoints
β β βββ π grades.js # Grade endpoints
β βββ π services/ # Business logic
β β βββ π notificationService.js # Alert system
β β βββ π reportService.js # Report generation
β βββ π scripts/ # Utility scripts
β β βββ π create-default-admin.js
β β βββ π create-first-admin.js
β βββ π docs/ # Documentation
β β βββ π ADMIN_SETUP.md
β βββ π package.json
βββ π ml-service/ # Python ML service
β βββ π models/ # Trained ML models
β β βββ π performance_model.pkl # Prediction model
β β βββ π risk_classifier.pkl # Risk detection
β βββ π services/ # ML logic
β β βββ π predictor.py # Prediction service
β β βββ π analyzer.py # Analysis service
β βββ π utils/ # ML utilities
β β βββ π preprocessor.py # Data preprocessing
β β βββ π feature_engineer.py # Feature engineering
β βββ π app.py # Flask application
β βββ π requirements.txt
βββ π DEFAULT_ADMIN_SETUP.md
βββ π README.md # You are here
# Frontend tests
cd frontend && npm test
# Backend tests
cd backend && npm test
# ML service tests
cd ml-service && pytest
# Run all tests
npm test# Build frontend for production
npm run build
# Start production server
npm start
# Environment variables required:
MONGODB_URI=your-postgresql-connection-string
JWT_SECRET=your-super-secure-jwt-secret
NODE_ENV=production
REDIS_URL=your-redis-url (optional)We love contributions! Please read our contributing guidelines before getting started.
- π΄ Fork the repository
- πΏ Create a feature branch (
git checkout -b feature/amazing-feature) - πΎ Commit your changes (
git commit -m 'Add amazing feature') - π§ͺ Add tests for new functionality
- π€ Push to the branch (
git push origin feature/amazing-feature) - π₯ Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
For support and questions:
- π§ Email: visiongrade.spas@gmail.com
- π¬ Open an issue
- π Check our documentation
