
RockStore is a marketplace and social network for rock and mineral collectors — a place to buy, sell, and show specimens with the scientific detail the hobby actually cares about: dimensions, weight, locality, condition, certification, and provenance. Faceted search, an interactive map of localities, collections, comments, and seller profiles round it into a community rather than a bare storefront.
It's a vibe-coded riff on the same problem behind the EarthWonders case study — how collectors discover one another and build enough trust to spend real money sight-unseen. Rebuilding it fast and unconstrained was a way to test ideas like map-based discovery, dominant-color tagging, and provenance-as-structured-data without the guardrails of a client engagement.
Role
Solo build — designed and vibe-coded end to end with AI pair-programming. Next.js 14 (App Router) on a Turbo monorepo, Prisma/Postgres, Algolia search, Mapbox, Stripe and PayPal.
Walkthrough
A closer look, screen by screen.
01 / 04
Specimens as records, not just products
Each listing carries the data collectors judge by — dimensions, weight, locality, condition, certification, and provenance — so a specimen reads like a documented object with a history, not a generic SKU.
02 / 04
Discover by where it came from
Algolia drives instant faceted search while a clustered Mapbox map turns locality into a way to browse. Certain mines and regions map directly to rarity, so the geography is a primary axis, not a footnote.
03 / 04
A storefront that's also a community
Collections, comments, favorites, and seller profiles give collectors a way to show what they hold, recognize expertise, and build the reputation that makes a high-value sale possible.
04 / 04
A familiar problem, rebuilt fast
Working the same terrain as EarthWonders without client constraints let me prototype the riskier ideas — color-based discovery, map-first browsing, structured provenance — and see which ones actually earn their place.
What shipped
Specimen catalog with rich metadata: dimensions, weight, origin, condition rating, and certification IDs.
Faceted Algolia search and filtering by price, condition, locality, and species.
Interactive Mapbox map with marker clustering for browsing by where specimens were found.
Social layer: comments, likes, favorites, public and private collections, and seller profiles.
Commerce stack scaffolded with Stripe and PayPal, plus structured provenance records for chain of custody.
Selected decisions
- 01
Treated locality as a first-class, browsable dimension — map and facets both — because in this hobby where a piece came from drives much of its value.
- 02
Auto-tagged dominant color from listing photos to power a visual discovery view.
- 03
Modeled provenance as a structured record rather than a free-text note, giving listings the standing of a catalog entry.
- 04
Built on a Turbo monorepo with a Storybook + Chromatic component library for visual-regression coverage.