I built a case compatibility checker covering 67 phone models (and open-sourced it)
Description and use
A web app and CLI were built to check case compatibility for 67 phone models, sharing a single JSON dataset and using tests to keep front‑ends in sync.
Problem
Customers repeatedly ask which case fits a specific phone model, leading to a poor support experience.
Outcome
The case compatibility checker covers 67 phone models, provides instant answers via web or CLI, and is open‑source under MIT. The shared dataset and sync test prevent drift between front‑ends.
Workflow
- Identify common customer question
- Design a tool with two front‑ends (web and CLI) sharing a single dataset
- Create phones.json with model, brand, release year, magsafe flag, case types, screen protector, and guide URL
- Write tests first: schema, CLI commands, packaging, web rendering, data sync
- Implement CLI using argparse and data loader
- Implement web app fetching phones.json via HTTP
- Run tests locally and in GitHub Actions
- Deploy web page as a single static HTML file
- Publish CLI via pip and source on GitHub
Evidence
I built a tool that just answers it.
Both front-ends read the same phones.json.
22 tests, and a GitHub Action runs them on every push.
- Record date: 2026-10-12T20:41:08.141Z