app
[DEPRECATED] Chip Thumbnailer → adom-chip-thumbnailer
Public Made by Adomby adom
DEPRECATED: use adom/adom-chip-thumbnailer. No longer maintained.
← Commit history
Show every thumbnail type: symbol(2) footprint(3) shaded-3D(4) orientations(6) outline-styles(5), each with a labeled contact sheet
6 files changed
+33−15
README.md+33−15@@ -1,30 +1,48 @@ # chip-thumbnailer -**The rendering engine behind chip-fetcher's library — three crisp thumbnails per chip (symbol, footprint, 3D), Adom-themed, with no local KiCad or EAGLE.**+**The rendering engine behind chip-fetcher's library — it renders every thumbnail kind a chip needs: themed symbol & footprint SVGs, OCCT-direct 3D renders from six angles, and crisp vector-outline icons in five styles. No local KiCad, no local EAGLE.** -chip-thumbnailer walks the chip-fetcher library and renders, for every part, the three views you see on each card: an Adom-themed KiCad **symbol** SVG, a dark-grid **footprint** SVG, and an OCCT-direct **3D isometric** PNG. It runs through the shared `service-kicad` and `service-step2glb` services — no local KiCad, no local EAGLE, no gallia. Standalone Rust.+chip-thumbnailer walks the chip-fetcher library and, for every part, renders the full set of thumbnails its cards, carats, and the adom-symbol/footprint studios consume — straight from the part's `.kicad_sym`, `.kicad_mod`, and STEP, through the shared `service-kicad` and `service-step2glb` services. Standalone Rust, no Node, no gallia. Below is **every thumbnail type it produces**, rendered for the same part (Nordic **nRF54L15**, 49-pin QFN). -## Three thumbnails per chip+# Every thumbnail it produces -+## 1. Symbol — 2 variants -The **symbol** is rendered from the part's `.kicad_sym` through `service-kicad`, then re-themed for the dark Adom canvas — pins grouped, labels legible, cropped tight. This is the same artwork the chip-fetcher card and the adom-symbol studio show, generated once and cached next to the source files.+ -+The schematic symbol, Adom-themed onto the dark canvas. Two sources are rendered so the chip-fetcher carat can switch between them: **`-symbol.svg`** (the canonical symbol from the part's `.kicad_sym`) and **`-symbol.ds2sf.svg`** (a symbol generated from the **datasheet-extracted** pin list via ds2sf, for when you want the logical, datasheet-true grouping). -The **footprint** comes from the `.kicad_mod`, styled onto a dark PCB grid with copper, the courtyard, and the pin-1 marker — cropped to the part with no page frame or title block. chip-thumbnailer reads legacy KiCad-5 `(module …)` footprints as well as modern ones, so older vendor downloads render correctly too.+## 2. Footprint — 3 variants -## 3D render styles+ -+The land pattern on a dark PCB grid, cropped tight to the part. Three sources are rendered: **`-footprint.svg`** (canonical), **`-footprint.authoritative.svg`** (the manufacturer/vendor-authoritative pattern, verbatim), and **`-footprint.ds2sf.svg`** (reconstructed from datasheet dimensions). Legacy KiCad-5 `(module …)` footprints render as cleanly as modern ones. -The **3D** view is rendered OCCT-direct from the STEP model via `service-step2glb` — not a screenshot of a viewer, but a true offscreen render at the correct orientation. Beyond the shaded isometric PNG, chip-thumbnailer emits crisp **vector outline** styles (thin / bold / blueprint / teal / dark) via OCCT hidden-line removal, each optionally with the part number laser-marked onto the chip's top face. These feed the chip-fetcher carat switcher and the adom-symbol "chip on the symbol" overlay.+## 3. 3D shaded render — 4 forms++++OCCT-direct shaded isometric renders of the real STEP model via `service-step2glb` — a true offscreen render, not a screenshot of a viewer. Four forms ship: **`-3d-iso.png`** (the full render), **`-3d-iso-named.png`** (with the part number **laser-marked onto the top face**), and **`-3d-iso-icon.png`** / **`-3d-iso-named-icon.png`** (tight square crops for small card/badge use).++## 4. 3D orientations — 6 angles++++The same package rendered from **every principal angle** so any tool can show the side it needs — the default **iso**, plus **x-up / x-down**, **y-up / y-down**, and **z-down**. `y-up` reveals the marked top face; `y-down` shows the pad/pin underside. These power the orientation switching in the chip-fetcher 3D view and the adom-symbol chip overlay.++## 5. 3D vector outline — 5 styles++++Crisp black-&-white (or accent) **line art** produced by **OCCT hidden-line removal** — schematic-native icons that print cleanly and stay legible at any size. Five styles cover light and dark contexts: **thin** and **bold** (dark strokes, for light/print backgrounds), **blueprint** (blue), **teal** (brand accent), and **dark** (white strokes, for dark UI). Each style also renders a **`-named`** variant with the part number laser-marked on the chip — so the icon you drop into a symbol carries its own label.++> **In total ~24 files per part**: 2 symbol + 3 footprint + 4 shaded-3D + 6 orientation + (5 styles × plain/named) outline. They're written next to the source files and cached until the part changes. ## How it runs -- **`once <MPN>`** — render all three thumbnails for one chip, written alongside the source files.+- **`once <MPN>`** — render the full set above for one chip, written alongside the source files. - **`scan`** — render every chip carrying a `.thumb-pending` marker (the batch path chip-fetcher triggers).-- **`rerender <MPN> <sym|fp|3d|all>`** — re-do just one kind.+- **`rerender <MPN> <sym|fp|3d|all>`** — re-do just one family. - **`status` / `health` / `config`** — show what exists, probe `kicad-cli` + `step2glb` + `service-step2glb`, print the resolved library root. ## Open source — check it out, vibe-code it, send it back@@ -33,8 +51,8 @@ chip-thumbnailer is MIT and **fully open**. The complete Rust source is in this 1. **Build it.** `cargo build --release` drops a standalone binary (no Node, no gallia). 2. **Point your install at your checkout.** `adompkg link john/chip-thumbnailer ./chip-thumbnailer` so the `chip-thumbnailer` you run is your local copy.-3. **Vibe-code a change.** Open the folder in Claude Code and describe what you want — a new render style, a different crop, another thumbnail kind. The symbol / footprint / 3D renderers are each one small, readable module.-4. **Send it back.** Open a **pull request** on this page (the wiki reviews and merges per-repo PRs), or start a discussion thread. Good additions get folded into the shipped app.+3. **Vibe-code a change.** Open the folder in Claude Code and describe what you want — a new render style, a different crop, another orientation, another thumbnail kind. The symbol / footprint / 3D renderers are each one small, readable module (`render_sym.rs`, `render_fp.rs`, `render_3d.rs`).+4. **Send it back.** Open a **pull request** on this page (the wiki reviews and merges per-repo PRs), or start a discussion thread. ## Part of the Adom EDA family @@ -43,7 +61,7 @@ The rendering engine for **chip-fetcher**; produces the artwork **adom-symbol**, ## Run it ```bash-chip-thumbnailer once nRF54L15 # render symbol + footprint + 3D for one chip+chip-thumbnailer once nRF54L15 # render the full thumbnail set for one chip chip-thumbnailer scan # render every chip marked .thumb-pending chip-thumbnailer health # probe kicad-cli + step2glb + service-step2glb ```
docs/cat-footprint.pngadded⋯ 1 unchanged line ⋯
docs/cat-orient.pngadded⋯ 1 unchanged line ⋯
docs/cat-outline.pngadded⋯ 1 unchanged line ⋯
docs/cat-shaded.pngadded⋯ 1 unchanged line ⋯
docs/cat-symbol.pngadded⋯ 1 unchanged line ⋯