Building CrickCLI with Vibes and AI: A Weekend Rust Hack
This weekend, I built CrickCLI — a command-line tool in Rust to check live cricket scores, recent results, and upcoming fixtures right from your terminal. No more switching tabs or getting ambushed by cricbuzz ads while working. Just clean scores in a neat table, all from your terminal.
But here's the cool part: I built most of it using Cursor with AI help — the whole project was basically me vibe coding.
What’s Vibe Coding Anyway?
Vibe coding is when you skip the boilerplate and let an AI co-pilot (like Cursor’s built-in assistant) do the heavy lifting. You just express what you want in plain English, and the tool scaffolds the code, fetches APIs, parses JSON, writes data structures, and even fixes bugs — all conversationally.
That’s exactly how CrickCLI was born.
What It Does
- Shows live matches with team names, venue, status, and scores.
- Supports filters like
iplto show only IPL games. - Commands:
crickcli live
crickcli live ipl
crickcli recent
crickcli upcoming - Uses the Cricbuzz API (via RapidAPI).
- Outputs a clean, tabular view with the
tabledcrate.
Cursor Made It Smooth
Cursor’s AI helped me:
- Scaffold the entire Rust CLI with clap + async setup.
- Parse messy nested JSON responses from the API.
- Fix deserialization errors on the fly (
matchScorebeing optional? handled). - Keep the code DRY with shared logic across commands.
- Format pretty tables using the
tabledcrate.
Honestly, it felt less like coding and more like jamming with a helpful AI pair programmer.
Check It Out
Code’s here: github.com/apsknight/crickcli
No ads, no distractions. Just cricket scores in your terminal.
What’s Next?
CrickCLI is functional, but there’s plenty of room to spice it up. Here's what I’m thinking:
Show scorecard and player stats in live command
Better filtering: Show only India matches and include more league subcommands (I only watch IPL so I might not implement it).
Score widgets: Maybe integrate with a status bar or TUI to keep scores live in the corner of your screen or maybe add it in shell prompt?
Package it: Publish to crates.io and maybe make it installable via brew for extra cool points.
Also kinda tempted to explore converting this into a tiny desktop widget so that it can be accessed from MacOS menu bar or a VSCode extension — cricket scores as you code? Chef’s kiss.