An open API service indexing awesome lists of open source software.

https://github.com/unhappychoice/gittype

A CLI typing game that turns your source code into typing challenges
https://github.com/unhappychoice/gittype

cli-game cli-tool code-practice coding-skills developer-experience developer-tools developers gamification learning-tool productivity programming rust terminal-game tree-sitter typing-game typing-practice

Last synced: 29 days ago
JSON representation

A CLI typing game that turns your source code into typing challenges

Awesome Lists containing this project

README

          

![GitType Banner](docs/images/gittype-banner.png)

# 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?

## Features โœจ

- ๐Ÿฆ€๐Ÿโšก๐Ÿน๐Ÿ’Ž๐ŸŽ๐ŸŽฏโ˜•๐Ÿ˜#๏ธโƒฃ๐Ÿ”งโž•๐ŸŽญ๐ŸŽฏ **Multi-language**: Rust, TypeScript, JavaScript, Python, Go, Ruby, Swift, Kotlin, Java, PHP, C#, C, C++, Haskell, Dart (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

## Installation ๐Ÿ“ฆ

### Homebrew (macOS/Linux)
```bash
brew install unhappychoice/tap/gittype
```

### Cargo (Universal)
```bash
cargo install gittype
```

## 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
```

## Screenshots ๐Ÿ“ธ

![GitType Title Screen](docs/images/title.png)

![GitType Gaming](docs/images/gaming.png)

![GitType Result](docs/images/result.png)

## 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
- **[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

## 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"*