npnp
Normalize Pin Net Pad (npnp) is an LCEDA/EasyEDA downloader and Altium library exporter written in pure Rust.
npnp searches LCEDA/LCSC components, downloads upstream EasyEDA source data and 3D models, and exports Altium-compatible schematic and PCB footprint libraries.
Features
- Search LCEDA/LCSC components by keyword, part name, or LCSC ID.
- Download 3D models as STEP or OBJ/MTL.
- Export raw EasyEDA symbol and footprint JSON for inspection.
- Export Altium schematic libraries (
.SchLib). - Export Altium PCB footprint libraries (
.PcbLib). - Embed STEP models into PCB libraries when upstream STEP data is available.
- Batch export many LCSC IDs from a text file.
- Export either one file per component or merged library pairs.
- Append new components into an existing merged
npnplibrary pair without duplicating existing LCSC IDs. - Show live batch progress with counts, active workers, elapsed time, and the most recently processed component.
- Resume non-merged batch exports with checkpoint files.
- Retry transient LCEDA/EasyEDA request failures automatically.
Overview:

Schematic library screenshots:
PCB library screenshots:
Requirements
- Rust toolchain for building from source.
- Network access to LCEDA/EasyEDA APIs when searching, downloading, or exporting.
- Altium Designer is recommended for final visual verification of generated
.SchLiband.PcbLibfiles.
Install Rust from https://rustup.rs/ if you do not already have it.
License
npnp now uses the closest standard license to the current project intent: PolyForm-Noncommercial-1.0.0 in LICENSE.md.
- Non-commercial use, research, evaluation, and personal experimentation are allowed.
- Commercial use, paid redistribution, paid service use, or use inside a commercial workflow requires separate permission from the author.
- If you redistribute the project, keep the license text and required notices.
- The PolyForm license does not legally require pull requests. This project still asks anyone publishing modified versions to mention the original
npnpproject and, when possible, send changes back as a pull request. - This is source-available and non-commercial, not an OSI open-source license.
How to use
In fact, you only need type npnp in terminal, and then copy some reay to use command lines to execute as follows.
Generally speaking, all you need to copy is the last two lines, which could export shclib and pcblib in batch to a taget output directory and also could append new components to the existing libs generated by npnp.
)
)
)
)
)
Another easy way is to use GUI TOOL <###> SeEx. And it is STRONGLY recommended. ENJOY, 😊.