MakerWorld BOM to McMaster Matcher

Rule-based MakerWorld → McMaster matcher: 41 fastener categories, length verification, monthly taxonomy crawl, enrich/pricing, and CSV export.

MakerWorld BOM to McMaster Matcher

Направление проекта

Программное обеспечение

Key Features

MakerWorld scrape and BOM merge
Tiered McMaster match across 41 categories
Metric and imperial fastener verification
Monthly taxonomy crawl + enrich/pricing UX

Scope of work

Build a focused BOM hygiene tool for 3D-print projects: paste a MakerWorld model URL, extract embedded, description, and spreadsheet hardware lists, and produce an editable table with McMaster-Carr product or search links.

Core constraints from day one:

  • No LLM matching — rule-based parsers and deterministic tier resolution only
  • Honest uncertainty — low-confidence rows stay visible for human verification
  • Notebook-first development — pipeline stages prototyped in Jupyter before promotion to FastAPI services
  • Scoped MVP — in-memory projects, CSV export, no checkout or ERP integration

Out of scope: multi-vendor procurement, automatic McMaster ordering, hosted third-party McMaster APIs as default path.

Timeline

PhaseWindowMilestone
ScaffoldJun 2026FastAPI + React + Jupyter dev stack (scripts/dev.sh)
MakerWorld ingestJun 2026Embedded BOM, description parser, CSV/XLSX attachments
McMaster linkingJun 2026Offline tiers + filtered browse URLs
VerificationJun 2026hardware_match_verify for diameter and bolt length
Editor MVPJun 2026TanStack table, confidence badges, CSV export
Browse + matcher maturityJun–Jul 2026In-house browse; nuts/washers; imperial; 41 categories
Taxonomy + enrich UXJul 2026Monthly crawl workflow; pricing tab; feedback dispatch

Stack & BOM (software)

LayerComponents
BackendFastAPI, Pydantic, httpx, optional Playwright
MatchingCatalog JSON, category router, hardware_spec.py, structured guesses
DataTaxonomy crawl, metacategories, monthly GitHub Actions refresh
FrontendReact, shadcn/ui, Tailwind CSS, TanStack Table, pricing + report-error
DevJupyterLab notebooks 0106, pytest (350+ offline), GitHub Actions

Deliverables

  • Public GitHub repository (makemcmasterBOM)
  • Shared pipeline entry points for notebooks and API
  • Post-match fastener length and size verification (metric + imperial)
  • Duplicate merge + description-BOM priority when section labeled
  • Rate limiting for MakerWorld scrape politeness
  • Monthly McMaster taxonomy crawl (Fastening & Joining)
  • Match-error feedback dispatch (optional email / GitHub / webhook)
  • Persistent project storage (roadmap)
  • Public-deploy security hardening (strict URL host checks, API auth)

Outcomes

  • Turns MakerWorld hardware prose into purchasable McMaster links without probabilistic guessing
  • Documents why filtered browse URLs beat wrong catalog SKUs when thread length matters
  • Keeps category maps fresh via monthly polite crawl, not per-import scrapes
  • Keeps legal surface small: server-side scraping, throttled outbound HTTP, optional API/enrich gated by env flags

Operational constraints

  • MakerWorld pages fetched server-side only; browser never scrapes directly
  • McMaster browse resolve and B2B API disabled by default in CI
  • Explicit description BOM sections win over embedded supply when both exist
  • Duplicate rows merged on (name, quantity); wording variants may still appear twice until normalization improves

Журнал и контекст

Здесь — объём, сроки и спецификация. Решения и подробный рассказ — в связанной статье блога.

Читать статью
Completed on: 2 июл. 2026 г.

Heff.world - сайт heff.industries.

© 2026 Heff.world. Все права защищены.