Transform typing practice into a personalized learning experience through real-time behavioral analysis, predictive analytics, and adaptive training generation.
Live Demo β’ Documentation β’ Features β’ Contributing
- π System Architecture β Comprehensive technical report, SWOT/TOWS analysis, and the 4+1 Architectural Views model.
- π Getting Started Guide β Setup instructions for the frontend and backend local development.
| Document | Purpose | File Path |
|---|---|---|
| System Architecture | Technical Architecture, 4+1 views, SWOT | docs/SYSTEM.md |
| Main Overview | High-level features, roadmap, setup | README.md |
Most typing platforms only measure speed.
TypeForge analyzes how you type.
Using machine learning and keystroke telemetry, TypeForge identifies behavioral patterns, reaction delays, hesitation zones, accuracy bottlenecks, and typing weaknesses to generate personalized practice sessions that evolve with every user interaction.
Instead of repeating generic typing tests, users receive training specifically optimized for their unique typing profile.
- Personalized typing curriculum generation
- Dynamic difficulty adjustment
- Real-time weakness detection
- Continuous skill progression tracking
- WPM tracking
- Accuracy scoring
- Reaction-time analysis
- Error heatmaps
- Historical performance trends
- K-Means clustering for user archetypes
- XGBoost performance forecasting
- LightGBM exercise ranking
- Isolation Forest anomaly detection
- Clerk Authentication
- JWT validation
- PostgreSQL Row Level Security
- Cloudflare Turnstile protection
- Secure API proxy architecture
- Compile-free frontend
- Lazy-loaded modules
- Passive event listeners
- Optimized rendering pipeline
- Memory leak prevention
graph TD
A[Browser Client] --> B[Vercel Edge CDN]
B --> C[FastAPI Backend]
C --> D[Supabase PostgreSQL]
A --> E[Clerk Authentication]
A --> F[Cloudflare Turnstile]
C --> G[ML Analytics Pipeline]
G --> H[K-Means]
G --> I[XGBoost]
G --> J[LightGBM]
G --> K[Isolation Forest]
| Layer | Technologies |
|---|---|
| Frontend | HTML5, CSS3, JavaScript ES Modules |
| Backend | FastAPI, Python |
| Database | PostgreSQL, Supabase |
| Authentication | Clerk |
| Security | Cloudflare Turnstile |
| Machine Learning | Scikit-Learn, XGBoost, LightGBM |
| Deployment | Vercel, Render |
| Version Control | Git, GitHub |
Built a client-side performance layer that:
- Pauses off-screen animations
- Prevents telemetry memory leaks
- Optimizes mobile rendering
- Uses IntersectionObserver for resource efficiency
Tracks:
- Key latency
- Burst speed
- Error frequency
- Recovery speed
- Character-level weaknesses
to build personalized training recommendations.
Browser
β
Vercel Proxy
β
FastAPI
β
Supabase
No database credentials or service keys are ever exposed to the client.
TypeForge/
β
βββ app/ <-- Core typing app (typing interface, dashboard, etc.)
βββ backend/ <-- FastAPI server, database schema, and routers
β βββ ml/ <-- Keystroke dynamics and personalization models
βββ css/ <-- Global theme variables, components, and animations
βββ js/ <-- Common layout scripts, Clerk auth, onboarding tours
βββ docs/ <-- Project documentation
β βββ SYSTEM.md <-- Comprehensive technical report and system architecture
βββ index.html & static files <-- Marketing pages (about, blog, features, etc.)
Detailed structure and architectural details are available in the docs/SYSTEM.md report.
git clone https://github.com/rotric04/TypeForge.git
cd TypeForgepython -m http.server 8000Visit:
http://localhost:8000
cd backend
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txtCreate:
CLERK_SECRET_KEY=
SUPABASE_URL=
SUPABASE_SERVICE_KEY=
TURNSTILE_SECRET_KEY=Run:
python main.pyAPI Docs:
http://localhost:8001/docs
- Adaptive typing engine
- User authentication
- Analytics dashboard
- Achievement system
- ML personalization
- Real-time multiplayer races
- AI-generated typing lessons
- Typing coach assistant
- Mobile application
- Browser extension
Contributions are welcome.
Whether you're interested in:
- UI/UX improvements
- Backend optimization
- Machine learning research
- Documentation
- Testing
Feel free to fork the repository and submit a pull request.
git checkout -b feature/amazing-feature
git commit -m "Add amazing feature"
git push origin feature/amazing-featureIf you find TypeForge useful:
β Star the repository
π΄ Fork the project
π Contribute improvements
π’ Share it with others
Every star helps increase visibility and encourages future development.
Software Engineer focused on:
- Machine Learning
- High-Performance Web Systems
- Full-Stack Engineering
- Human-Computer Interaction
GitHub: https://github.com/rotric04
LinkedIn: https://linkedin.com/in/mohit-assudani-
Email: mohitassudani.3@gmail.com
Released under the MIT License.
Built with curiosity, engineering discipline, and a passion for creating better learning experiences.