Cassette Finder


In Development

The Problem I Set Out to Solve

As a bike shop manager, I watched mechanics waste hours every week hunting across supplier catalogues for compatible cassettes — juggling speed ratings, ratios, brands, and availability. I built Cassette Finder to eliminate that entirely.

❌ The Problem

Bike mechanics routinely spend significant time manually searching multiple supplier websites to find a single compatible cassette — battling stock issues, brand changes, and compatibility mismatches across an overwhelming number of speed and ratio combinations.

✅ The Solution

A free, searchable web tool that aggregates cassette data across suppliers. Mechanics filter by speed, ratio, or brand and instantly receive a matched list with direct links and part numbers — turning an hours-long task into seconds.

How It Works

  • Users select cassette parameters (speed, ratio, brand) via a clean frontend interface built in JavaScript
  • A Flask REST API processes the query and interrogates a SQLite database populated with supplier stock data
  • Results are returned as a ranked list of compatible cassettes, each with supplier name, part number, and a direct purchase link
  • The database is designed to be updated as suppliers add, drop, or change product lines

Tech Stack

  • Python
  • Flask (REST API)
  • SQLite3
  • JavaScript
  • HTML / CSS
  • Database Design

Development Timeline

  1. Complete core cassette database and seed with initial supplier data
  2. Build and deploy public-facing search interface
  3. Add supplier update pipeline to keep data current
  4. Expand to other drivetrain components (chains, derailleurs)
  5. Explore partnerships with UK bike trade suppliers for live stock feeds

Source Code

View on GitHub