
# GitType โจ๏ธ๐ป
> *"Show your AI who's boss: just you, your keyboard, and your coding sins"*
**GitType** turns your own source code into typing challenges. Because why practice with boring lorem ipsum when you can type your beautiful `fn main()` implementations?
## Demo ๐ฌ

## Features โจ
- ๐ฆ๐โก๐น๐๐๐ฏโ๐#๏ธโฃ๐งโ๐ญ๐ฏโก๐ง๐ก **Multi-language**: Rust, TypeScript, JavaScript, Python, Go, Ruby, Swift, Kotlin, Java, PHP, C#, C, C++, Haskell, Dart, Scala, Clojure, Elixir, Erlang, Zig (more languages incoming!)
- ๐ **Real-time metrics**: Live WPM, accuracy, and consistency tracking as you type
- ๐ **Ranking system**: Unlock developer titles from "Hello World Newbie" to "Quantum Computer" with ASCII art
- ๐ฎ **Multiple game modes**: Normal, Time Attack, and custom difficulty levels (Easy to Zen)
- โธ๏ธ **Pause/resume**: Take breaks without ruining your stats
- ๐ฏ **Your own code**: Type functions from your actual projects, not boring examples
- ๐ฅ **Trending repositories**: Practice with hot GitHub repositories updated daily
- ๐จ **15+ Themes**: Built-in themes with Dark/Light modes + custom theme support
## Installation ๐ฆ
### Quick Install (Recommended)
#### One-liner installation (Linux/macOS/Windows)
```bash
#### Or with specific version
```bash
### Homebrew (macOS/Linux)
```bash
brew install gittype
```
### Cargo (Universal)
```bash
cargo install gittype
```
### Nix (NixOS/Nix)
If you have [Nix](https://nixos.org/) installed, you can run GitType directly:
```bash
# Stable version (recommended)
nix run github:unhappychoice/gittype
# Development version (latest from main branch)
nix run github:unhappychoice/gittype#unstable
```
### Binary Downloads
Get pre-compiled binaries for your platform from our [releases page](https://github.com/unhappychoice/gittype/releases/latest).
Available platforms:
- `x86_64-apple-darwin` (Intel Mac)
- `aarch64-apple-darwin` (Apple Silicon Mac)
- `x86_64-unknown-linux-gnu` (Linux x64)
- `aarch64-unknown-linux-gnu` (Linux ARM64)
- `x86_64-pc-windows-msvc` (Windows)
## Quick Start ๐
```bash
# cd into your messy codebase
cd ~/that-project-you-never-finished
# Start typing your own spaghetti code (uses current directory by default)
gittype
# Or specify a specific repository path
gittype /path/to/another/repo
# Clone and play with any GitHub repository
gittype --repo clap-rs/clap
gittype --repo https://github.com/ratatui-org/ratatui
gittype --repo git@github.com:dtolnay/anyhow.git
# Discover and practice with trending GitHub repositories
gittype trending # Browse trending repos interactively
gittype trending rust # Filter by language (Rust)
# Play with cached repositories interactively
gittype repo play
```
## Why GitType? ๐ค
- **Look busy at work** โ "I'm studying the codebase" (technically true!)
- **Beat the AI overlords** โ Type faster than ChatGPT can generate
- **Stop typing boring stuff** โ Your own bugs are way more interesting than lorem ipsum
- **Discover forgotten treasures** โ That elegant function you wrote at 3am last year
- **Procrastinate like a pro** โ It's code review, but gamified!
- **Embrace your legacy code** โ Finally face those variable names you're not proud of
- **Debug your typing skills** โ Because `pubic static void main` isn't a typo anymore
- **Therapeutic code reliving** โ Type through your programming journey, tears included
- **Climb the dev ladder** โ From "Code Monkey" to "Quantum Computer" - each rank comes with fancy ASCII art
*"Basically, you need an excuse to avoid real work, and this one's pretty good."*
## Documentation ๐
Perfect for when the game gets too addictive:
- **[Installation](docs/installation.md)** - `cargo install` and chill
- **[Usage](docs/usage.md)** - All the CLI flags your heart desires
- **[Playing Guide](docs/playing-guide.md)** - Game modes, scoring, and ranks
- **[Themes](docs/themes.md)** - 15+ built-in themes and custom theme creation
- **[Languages](docs/supported-languages.md)** - What we extract and how
- **[Contributing](docs/CONTRIBUTING.md)** - Join the keyboard warriors
- **[Architecture](docs/ARCHITECTURE.md)** - For the curious minds
## Screenshots ๐ธ











## Related Projects ๐จ
Prefer watching code over typing it? Check out [**Gitlogue**](https://github.com/unhappychoice/gitlogue) - A terminal screensaver that animates your Git commit history with realistic typing effects.
## License ๐
[MIT](LICENSE) - Because sharing is caring (and legal requirements)
---
*Built with โค๏ธ and way too much caffeine by developers who got tired of typing "hello world"*
## Author
[@unhappychoice](https://unhappychoice.com)