JLCImport is a KiCad action plugin that imports symbols, footprints, and 3D models from LCSC/JLCPCB into your project or global library.
- Imports symbol, footprint, and 3D model data in one step.
- Works with project libraries or global KiCad libraries.
- Includes searchable part lookup with stock and type filtering.
- Handles modern KiCad formats (8/9/10).
- Ships with plugin, CLI, GUI, and TUI workflows.
- Open KiCad and go to Tools > Plugin and Content Manager
- Open repository settings and add:
https://github.com/jvanderberg/kicad_jlcimport/releases/latest/download/repository.json - Refresh repositories
- Install JLCImport
Fallback: install from ZIP using Releases (JLCImport-vX.X.X.zip, not "Source code" ZIP).
For local development, link src/kicad_jlcimport into your KiCad plugin directory and restart KiCad.
Open PCB Editor > Tools > External Plugins > JLCImport.
- Search for a part.
- Pick Project or Global destination.
- Set library name if needed.
- Click Import.
If sym-lib-table or fp-lib-table is created for the first time, reopen the project once.
This repo also ships standalone tools:
jlcimport-clifor scripts and batch work.jlcimport-guifor a desktop app outside KiCad.jlcimport-tuifor terminal workflow.
Quick examples:
jlcimport-cli search "100nF 0402" -t basic
jlcimport-cli import C427602 -p /path/to/project
jlcimport-gui -p /path/to/project
jlcimport-tui --kicad-version 9Create or activate the local environment with:
source install.sh # macOS/Linux
. .\install.ps1 # Windows PowerShellBased on recent git history:
v1.4.0: KiCad footprint browser with live preview, footprint/3D model renaming, KiCad library footprint reuse, SpinnerOverlay deadlock fix, multi-unit symbol crash fix, and pinned ruff version.v1.2.10: fixed Python 3.9 annotation evaluation in library handling.v1.2.9: made the plugin dialog non-modal and added multi-unit symbol support.v1.2.8: hardened SVG path parsing for better import reliability.v1.2.x: continued fixes for datasheets, rendering, path handling, and KiCad 9 support.
The plugin stores settings in jlcimport.json in your KiCad config directory. Right now this is mainly the library name preference, shared across plugin, CLI, and TUI.
The project targets KiCad 8, 9, and 10.
For the plugin inside KiCad, no extra Python packages are required.
For standalone tools:
- GUI needs
wxPython(pip install -e '.[gui]') - TUI needs Python 3.10+ and
textualdependencies (pip install -e '.[tui]')
On Windows with KiCad 9, symbol preview may fail if wx.svg._nanosvg is missing. Use the fix in fixes/README.md.
