Vim Masterpiece is an immersive, 30-level terminal RPG designed to transform anyone from a Vim novice into a command-line ninja. Built with Python and the Textual framework, it blends professional-grade educational logic with high-fidelity cyberpunk aesthetics.
The game features a structured curriculum that teaches you Vim step-by-step through a 30-level infiltration mission.
| Phase | Levels | Focus |
|---|---|---|
| I: The Foundation | 1 - 5 | hjkl basics, word jumps (w/b), and line boundaries (0/$). |
| II: The Hunter | 6 - 10 | Precise targeted jumps (f/t) and the first Regex Boss encounter. |
| III: The Weaver | 11 - 20 | Visual Mode selection, Registers (Yank/Put), and Insert Mode tasks. |
| IV: The Master | 21 - 30 | Macros (q), Text Objects (iw/ip), and efficiency optimization. |
Play efficiently to trigger your Aura. Using counts (e.g., 5j) or search motions instead of repetitive keys will cause your character to glow with a pulsating blue energy.
Items aren't just "picked up"—they are Yanked ("ay) into specific Vim registers. You must keep the right keys in the right registers and Put (p) them into locks to progress.
Encounter "Corrupted Binary" bosses. They are immune to standard attacks and can only be purged by entering command mode and typing precise search-and-replace strings like :%s/virus/data/g.
Visual ASCII [CLACK] and [TICK] bubbles appear on-screen as you type, providing an satisfying arcade-like response to your command sequences.
The game features a custom theme inspired by Tokyonight, utilizing Sky Blue, Vibrant Purple, and Emerald accents to create a world-class terminal environment.
- Python 3.8+
- Textual library
# Clone the repository
git clone https://github.com/ExPl0iT-29/learn-vim.git
cd learn-vim
# Install dependencies
pip install textual
# Launch the Masterpiece
python -m src.appEvery level tracks your keystroke efficiency. Try to beat the Par score to earn an S-Rank and see your progress on the local persistent leaderboard.
- ExPl0iT-29 (tusharsatpute68@gmail.com)
“Life is too short for GUI editors. May your keystrokes be few and your buffers be clean.”