A feature-rich JavaFX typing speed test application with multiplayer capabilities, comprehensive statistics tracking, and customizable themes.
Video demo - https://www.facebook.com/arefinsowad/videos/2183812748803812
- Multiple Game Modes: Time-based, word count, and custom challenges
- Difficulty Levels: Easy, medium, and hard word sets
- Real-time Feedback: Live WPM, accuracy, and error tracking
- Progress Visualization: Dynamic typing progress display
- Server/Client Architecture: Host or join typing competitions
- Real-time Synchronization: Synchronized challenges across multiple players
- Competitive Scoring: Compare performance with other players
- Round-based Gameplay: Structured multiplayer sessions
- Comprehensive Tracking: Detailed performance history
- Visual Charts: Progress visualization with interactive charts
- Performance Metrics: WPM, accuracy, consistency analysis
- SQLite Database: Persistent local statistics storage
- Multiple Themes: Light and dark theme support
- Configurable Settings: Customizable game parameters
- Keyboard Shortcuts: Comprehensive hotkey support
- Responsive UI: Adaptive interface design
- Smart Word Provider: Intelligent word selection algorithms
- Error Analysis: Detailed typing error tracking
- Session Management: Comprehensive test session handling
- Resource Management: Efficient font and theme loading
This project has been extensively documented using an LLM, please checkout the WITHOUT-DOC branch for files without any sort of comments or documentation.
- Java 17 or higher
- Maven 3.6+
- JavaFX 17+
- Launch the application
- Choose your preferred theme (Light/Dark)
- Select a game mode (Time-based, Word count, etc.)
- Set difficulty level (Easy, Medium, Hard)
- Start typing!
Typerr/
├── src/main/java/com/typerr/
│ ├── Typerr.java # Main application entry point
│ ├── TestSession.java # Core typing test logic
│ ├── database/ # Database layer
│ ├── network/ # Multiplayer networking
│ ├── ui/ # User interface controllers
│ └── charts/ # Statistics visualization
│ └── statics/ # Constants and Enums
├── src/main/resources/ # Application resources
├── docs/ # Documentation
└── pom.xml # Maven configuration
P.S. Typer Logo image taken from Google