一款 CLI 代码输入游戏,将您的源代码转换为输入挑战
Turn your own source code into typing challenges.
Show your AI who's boss — just you, your keyboard, and your coding sins.
## 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 curl -sSL https://raw.githubusercontent.com/unhappychoice/gittype/main/install.sh | bash ``` #### Or with specific version ```bash curl -sSL https://raw.githubusercontent.com/unhappychoice/gittype/main/install.sh | bash -s -- --version v0.5.0 ``` ### 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 ``` … ``` ## 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) ## Support If you find this project useful, please consider: - ⭐️ [Star on GitHub](https://github.com/unhappychoice/gittype) - [Share on X](https://x.com/intent/post?text=gittype%3A%20a%20CLI%20typing%20game%20that%20uses%20your%20own%20source%20code%20as%20practice%20text%20%F0%9F%8E%AE&url=https%3A//github.com/unhappychoice/gittype&hashtags=gittype,CLI,Rust,typing) - [Share on Bluesky](https://bsky.app/intent/compose?text=gittype%3A%20a%20CLI%20typing%20game%20that%20uses%20your%20own%20source%20code%20as%20practice%20text%20%F0%9F%8E%AE%20%23gittype%20%23CLI%20%23Rust%20%23typing%20https%3A//github.com/unhappychoice/gittype) - [Share on Threads](https://www.threads.net/intent/post?text=gittype%3A%20a%20CLI%20typing%20game%20that%20uses%20your%20own%20source%20code%20as%20practice%20text%20%F0%9F%8E%AE%20%23gittype%20%23CLI%20%23Rust%20%23typing%20https%3A//github.com/unhappychoice/gittype) - [Share on LinkedIn](https://www.linkedin.com/sharing/share-offsite/?url=https%3A//github.com/unhappychoice/gittype) - [Share on Facebook](https://www.facebook.com/sharer/sharer.php?u=https%3A//github.com/unhappychoice/gittype) - [Submit to Hacker News](https://news.ycombinator.com/submitlink?u=https%3A//github.com/unhappychoice/gittype&t=gittype%3A%20a%20CLI%20typing%20game%20that%20uses%20your%20own%20source%20code%20as%20practice%20text%20%F0%9F%8E%AE) - Drop it into your Discord server or developer chat - ✍️ Write about it on your blog or in a newsletter Every bit of support helps. Thanks!
feat: add system theme following (auto light/dark mode)
Feature Idea: Rhythm-Game Mode — Turn Coding into a Music Game 🎵⌨️
Debian Bookworm support
feat: Add line filter support
feat: skip untypeable characters
feat: Allow viewing the code from result or history screens
📍 Roadmap - GitType Development Plan
feat: Add `gittype oss` subcommand for curated repository recommendations
feat: add typing mode for git commit/diff added lines
feat: Add replay recording and video export functionality