Adom SF Convert
Public Made by Adomby adom
Native Rust converter: EAGLE/Fusion .lbr + Altium .SchLib/.PcbLib → KiCad, rendering each format's own geometry.
name: adom-sfconvert description: > Native Rust CLI that converts foreign EDA libraries — EAGLE/Fusion 360 .lbr and Altium .SchLib/.PcbLib/.IntLib — into KiCad symbol + footprint, and renders each format's OWN geometry as a native SVG thumbnail. Pure Rust, no KiCad install, no service round-trip: EAGLE/Fusion via built-in eagle.rs, Altium footprints via altium-pcblib, Altium symbols via altium-schlib. "sf" = symbol + footprint (like ds2sf). Conversion to .kicad_sym/.kicad_mod is export-only; rendering stays native so cross-source comparison shows each format's truth instead of one normalised KiCad interpretation. Used by chip-fetcher for per-source thumbnails.
adom-sfconvert
Convert + natively render EAGLE/Fusion .lbr and Altium .SchLib/.PcbLib.
When to reach for this
- You have a non-KiCad library (EAGLE/Fusion or Altium) and want a KiCad symbol/footprint out of it — without installing KiCad.
- You want a native thumbnail of a foreign library that shows its own geometry (for side-by-side source comparison), not a KiCad-normalised version.
Command
adom-sfconvert convert <file> [--out-dir <dir>] [--name <stem>]
Recognised inputs: .lbr (EAGLE/Fusion XML), .SchLib / .PcbLib / .IntLib
(Altium OLE2 binary, auto-detected by the D0CF11E0 magic).
Outputs per run: <stem>.kicad_sym / <stem>.kicad_mod (export) and
<stem>-symbol.svg / <stem>-footprint.svg (native thumbnails).
Architecture (all native, all local)
.lbr → eagle.rs → KiCad sym/mod + native SVG
.PcbLib → altium-pcblib → KiCad mod + native SVG
.SchLib → altium-schlib → KiCad sym + native SVG
No kicad-cli, no service POST. The only thing in the wider pipeline that still
calls the shared KiCad service is rendering KiCad's own format — correct, since
that isn't a foreign conversion.
Design rule
Render native, convert on export. Converting a foreign format to KiCad just
to draw it throws away exactly the differences a comparison tool exists to find.
Keep originals; emit .kicad_* only when the user picks KiCad as the target.
Companions
adom-ds2sf— datasheet PDF → symbol + footprint.altium-pcblib/altium-schlib— the native Altium readers.chip-fetcher— shows every source's render for compare-and-contrast.
---
name: adom-sfconvert
description: >
Native Rust CLI that converts foreign EDA libraries — EAGLE/Fusion 360 .lbr and
Altium .SchLib/.PcbLib/.IntLib — into KiCad symbol + footprint, and renders each
format's OWN geometry as a native SVG thumbnail. Pure Rust, no KiCad install, no
service round-trip: EAGLE/Fusion via built-in eagle.rs, Altium footprints via
altium-pcblib, Altium symbols via altium-schlib. "sf" = symbol + footprint (like
ds2sf). Conversion to .kicad_sym/.kicad_mod is export-only; rendering stays native
so cross-source comparison shows each format's truth instead of one normalised
KiCad interpretation. Used by chip-fetcher for per-source thumbnails.
---
# adom-sfconvert
Convert + natively render EAGLE/Fusion `.lbr` and Altium `.SchLib`/`.PcbLib`.
## When to reach for this
- You have a non-KiCad library (EAGLE/Fusion or Altium) and want a **KiCad
symbol/footprint** out of it — without installing KiCad.
- You want a **native thumbnail** of a foreign library that shows its own
geometry (for side-by-side source comparison), not a KiCad-normalised version.
## Command
```bash
adom-sfconvert convert <file> [--out-dir <dir>] [--name <stem>]
```
Recognised inputs: `.lbr` (EAGLE/Fusion XML), `.SchLib` / `.PcbLib` / `.IntLib`
(Altium OLE2 binary, auto-detected by the `D0CF11E0` magic).
Outputs per run: `<stem>.kicad_sym` / `<stem>.kicad_mod` (export) and
`<stem>-symbol.svg` / `<stem>-footprint.svg` (native thumbnails).
## Architecture (all native, all local)
```
.lbr → eagle.rs → KiCad sym/mod + native SVG
.PcbLib → altium-pcblib → KiCad mod + native SVG
.SchLib → altium-schlib → KiCad sym + native SVG
```
No `kicad-cli`, no service POST. The only thing in the wider pipeline that still
calls the shared KiCad service is rendering KiCad's *own* format — correct, since
that isn't a foreign conversion.
## Design rule
**Render native, convert on export.** Converting a foreign format to KiCad just
to draw it throws away exactly the differences a comparison tool exists to find.
Keep originals; emit `.kicad_*` only when the user picks KiCad as the target.
## Companions
- `adom-ds2sf` — datasheet PDF → symbol + footprint.
- `altium-pcblib` / `altium-schlib` — the native Altium readers.
- `chip-fetcher` — shows every source's render for compare-and-contrast.