π StaticsCoach.xyz
An AI-powered Statics practice platform that automatically grades handwritten engineering solutions and provides personalized feedback, topic recommendations, and learning resources.
π Website: https://staticscoach.xyz
Features
- π· Upload handwritten solutions (PNG, JPG, PDF)
- π€ AI-based grading using Google Gemini Vision
- π Automatic scoring (0β100)
- π Detailed solution feedback
- π Detects:
- Missing Free Body Diagrams (FBD)
- Missing equilibrium equations
- Missing moment equations
- Missing final answers
- Missing units
- Cropped or incomplete submissions
- π Personalized topic recommendations
- π Direct links to interactive learning modules
- β‘ Modern Flask web interface
How It Works
- Select a Statics question.
- Upload your handwritten solution.
- The AI compares your work with the official solution.
-
The system evaluates:
-
Relevance of the uploaded solution
- Completeness
- Free Body Diagrams
- Equilibrium equations
- Moment equations (when applicable)
- Final numerical answers
- Units
-
Overall correctness
-
A detailed feedback report is generated.
Current Question Set
The platform currently supports 10 engineering statics problems including:
- Trusses
- Frames
- Cables
- 3D Equilibrium
- Friction
- Internal Forces
More problems will be added over time.
Technology Stack
Backend
- Python
- Flask
- Google Gemini API
- Gunicorn
- Nginx
Frontend
Deployment
- AWS Lightsail
- Ubuntu
- Nginx Reverse Proxy
- Gunicorn
AI Evaluation
The AI analyzes student submissions against the official instructor solution and produces structured feedback including:
- Overall score
- Main mistakes
- Weak subject areas
- Missing equations
- Recommended practice
- Detailed mathematical feedback
- Next learning step
Learning Modules
When weaknesses are detected, the system recommends interactive modules covering:
- Vector decomposition
- Support reactions
- Free Body Diagrams
- Moments
- Action-reaction relationships
- Shear and Moment Diagrams
- Linear systems
Installation
Clone the repository
bash
git clone https://github.com/mfatihdinc61/staticscouch.git
cd staticscouch
Create virtual environment
bash
python -m venv venv
Activate
Windows
bash
venv\Scripts\activate
Linux
bash
source venv/bin/activate
Install dependencies
bash
pip install -r requirements.txt
Create a .env
text
GEMINI_API_KEY=your_api_key
GEMINI_MODEL=gemini-2.5-flash
Run
bash
python app.py
Project Structure
app.py
templates/
static/
questions/
uploads/
topics/
requirements.txt
README.md
Roadmap
- [x] AI grading
- [x] Question verification
- [x] Personalized feedback
- [x] Topic recommendations
- [x] AWS deployment
- [x] Custom domain
- [ ] Student accounts
- [ ] Instructor dashboard
- [ ] Question bank expansion
- [ ] Analytics
- [ ] Leaderboards
- [ ] Learning progress tracking
License
This project is released under the MIT License.
Author
Muhammet Fatih DinΓ§
Machine Learning Engineer
GitHub:
https://github.com/mfatihdinc61
Website:
https://staticscoach.xyz