Parts Search
Public Made by Adomby adom
One search box across Mouser, DigiKey and JLCPCB: parallel queries, side-by-side product photos, and a Mouser-preferred recommendation that reasons around stock and lead time.
Install?
One search box across Mouser, DigiKey and JLCPCB. Parallel queries, side-by-side product photos, and a Mouser-preferred recommendation that reasons around stock and lead time. Dock Bar ready: serve, health, settings, Say it.
adom-wiki pkg install adom/adom-parts-search
Latest: v2.0.12, published
Dependencies 3 apps
- app adom/adom-mouser *
- app adom/adom-digikey *
- app adom/adom-jlcpcb *
Contents
README
markdownAdom Parts Search
One search box. Mouser, DigiKey and JLCPCB at once, with the fastest, cheapest pick chosen for you.
Sourcing a part used to mean three browser tabs, three logins, three different ways of saying "in stock," and a mental spreadsheet to figure out who actually gets it to your bench fastest. Parts Search collapses that into one query: type a part, or just ask your AI, and it fires three parallel searches, normalizes the answers, and names the single best source.
Install
adom-wiki pkg install adom/adom-parts-search
Or click the Parts Search card in the Hydrogen Dock Bar: it installs, starts the page, and opens it for you.
Say it to your AI
You do not have to drive the page. Ask your AI, using the words parts search:
- "with parts search, find a 10k 0402 resistor"
- "with parts search, find the cheapest LM358"
- "with parts search, price an STM32F103RBT6"
- "with parts search, check ESP32-S3-WROOM-1 stock"
- "with parts search, source the parts in my BOM"
The same phrases sit at the top of the page; a click (or Try it) copies one to the clipboard and a toast confirms it. The strip has an X: close it once and it stays closed (Settings brings it back).
Quick start
# Browse: opens or refreshes the Parts Search tab and prints the results
adom-parts-search show "STM32F103RBT6"
# Script: JSON only, no page
adom-parts-search search "LM555" | jq '.recommendation'
# Dock contract: start the page server (idempotent) and print its direct URL
adom-parts-search serve --print-url
# Health of the three vendor backends, one line
adom-parts-search health
Screenshots
Three distributors, one comparable view
One keyword goes to Mouser, DigiKey and JLCPCB simultaneously; results land in three aligned columns with product photos, and a recommendation banner names the winner and the policy that chose it.

Settings that explain themselves
The cog in the header opens a dismissible settings modal: results per vendor, which vendors to query, the recommendation policy (Mouser preferred or cheapest in stock), product photos, and the taskbar progress bar. Every card says what it does and how, every row shows its default, and Restore defaults takes two clicks.


Every control explains itself
Hover anything and a tooltip says what it does and what will change, written for a newcomer.

The Dock Bar card
Parts Search is a card in the Hydrogen Dock Bar, the app-launcher rail on the right edge of the
ah workspace. One click runs the whole path in your workspace container: install the CLI from the
wiki (skipped when it is already there), start the page server with adom-parts-search serve --print-url, health-check the URL it prints, and land the tab on the Parts Search page. The
card's LED is live health read from this app's own /api/status every 15 seconds: green when all
three vendor backends answer, yellow when one is degraded or switched off, red when none are
reachable. The page you get is the same page adom-parts-search show drives; there is no
separate launcher.

Not in your rail? Dock settings (the gear at the top of the rail), Add app,
adom/adom-parts-search. The full contract and diagnosis table live in the
adom-parts-search-dock skill.
Dependencies
| Dependency | Required? | Why |
|---|---|---|
adom-mouser (service-mouser) |
Recommended | Mouser column and the Mouser-preferred recommendation |
adom-digikey (service-digikey) |
Recommended | DigiKey column and the fallback when Mouser cannot ship |
adom-jlcpcb (service-jlcpcb) |
Optional | JLCPCB assembly-library column |
Client-only: it owns no API keys and runs no service of its own; it federates the three vendor backends and renders. At least one backend must be reachable; a missing one shows a friendly error and the recommendation reasons around it.
Features
- One interface, three distributors: parallel queries, side-by-side product photos.
- Mouser-preferred routing: Mouser is Adom's preferred vendor (fastest, lowest-cost fulfillment), so it wins when it is in stock.
- A recommendation that flips: DigiKey wins when Mouser is out of stock or long-lead, and a second policy, cheapest in stock, compares unit prices across every vendor that answered.
- Two faces: a page for browsing, a JSON CLI for scripting and BOMs.
- A narrated demo: the play button in the header runs a two-minute guided tour with a
draggable play / pause / next / previous / exit floaty; the narration is pre-rendered speech
shipped inside the binary (nothing is synthesized at runtime).
adom-parts-search demostarts it from the CLI. - Dock Bar ready: a version-aware idempotent
serve, a fast/api/statuswith per-vendor LEDs, webview ownership, and a Say it strip. - Taskbar progress: while a search runs, a progress bar sized from measured durations is painted on the Hydrogen taskbar button (indeterminate for AI-driven searches).
- AI-drivable:
GET /state,GET /console,POST /api/toast,POST /api/click, and the matchinguiverbs, so an AI can drive and observe the page exactly as a person would. - Graceful degradation: a rate-limited or down backend never fails the whole search.
Skills
| Skill | Purpose |
|---|---|
adom-parts-search |
When and how the AI drives the app: show vs search, MPN extraction, part-family corrections |
adom-parts-search-dock |
How the app lives in the Hydrogen Dock Bar: the card, the launch steps, the health LED, diagnosis |
adom-parts-search-build |
Release workflow (build, publish to the wiki) |
CLI reference
| Command | What it does |
|---|---|
adom-parts-search show "<q>" |
Open or refresh the Parts Search tab and print full per-vendor results |
adom-parts-search search "<q>" |
JSON only (no page); pipe to jq |
adom-parts-search serve [--print-url] |
Start the page server in the background, idempotent and version-aware; print its direct URL |
adom-parts-search app |
Run the page server in the foreground |
adom-parts-search health [--json] |
One-line health of the three vendor backends (or the full status JSON) |
adom-parts-search status |
The /api/status payload |
adom-parts-search ui toast "<msg>" |
Raise a toast on the page |
adom-parts-search ui click <id> |
Click a control on the page (search, instock, settings, restore, policy ...) |
adom-parts-search ui search "<q>" |
Run a search through the page |
adom-parts-search settings get|set|restore |
Read or change ~/.adom/parts-search-settings.json |
adom-parts-search demo |
Run the narrated guided demo on the page |
--limit N / --in-stock-only |
Cap hits per vendor / hide zero-stock (defaults come from Settings) |
Open source: make it yours, then give it back
This app is open source under the MIT license. Fork it, rewrite it, bend it to your workflow,
and when you have made it better, send your changes back to the Adom Wiki so the whole community
benefits. Every wiki page is a git repo with a package registry on top, so adom-wiki pkg publish
your own fork, or open a pull request against this page.
One caveat: the search backend is an Adom service. The actual lookups run against Adom's hosted Mouser, DigiKey and JLCPCB backends, which use Adom's vendor API credentials and count against Adom's quota. That hosted backend is an Adom service and is subject to change: rate limits, endpoints, and availability can move at any time. Everything client-side is yours to fork and republish; the cloud API quota is not.
License
MIT. See the license text at the bottom of the wiki page.