Skip to main content

EasyEDA Monkey

easyeda_monkey is a small Python package for reading EasyEDA / LCSC component data into typed Python objects. It also exposes a small diagnostic CLI for package-local fetch and inspection workflows.

Current scope:

  • EasyEDA / LCSC component API responses
  • schematic symbols
  • PCB footprints
  • 3D model references and URL extraction
  • SVG path parsing helpers

The package is intentionally focused on parsing and close-to-format data models. Larger workflow commands and conversion applications should live in downstream tools.

Install

Install uv first if it is not already available:

powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

On macOS or Linux:

curl -LsSf https://astral.sh/uv/install.sh | sh

For the command-line tool, use uv tool install so the executable is installed in an isolated tool environment and exposed on PATH:

uv tool install easyeda-monkey
uv tool update-shell
easyeda-monkey --version

For library use inside an existing Python environment:

pip install easyeda-monkey

For development:

git clone https://github.com/wavenumber-eng/easyeda_monkey.git
cd easyeda_monkey
uv sync --all-extras

Testing

The active suite uses redistributable saved EasyEDA / LCSC API response fixtures and does not require a private corpus.

uv run rack run --all

Rack is the primary local gate. L99 signoff runs release metadata checks, Python signoff, CLI design-doc checks, API design-doc checks, ruff, and pyright.

CLI

The package installs the easyeda-monkey console script.

easyeda-monkey --version
easyeda-monkey version
easyeda-monkey fetch-part C21190
easyeda-monkey fetch-part C21190 --cache-dir .cache/easyeda --output C21190.summary.json
easyeda-monkey download-part C21190 --output-dir output
python -m easyeda_monkey version

download-part writes to output/<LCSC_ID>/ by default. The bundle includes the raw API response, a compact summary, extracted 3D model metadata, and STEP or OBJ model files when EasyEDA exposes a model reference for the part.

The top-level CLI module is only an orchestrator. Each public subcommand lives in its own easyeda_monkey.cli_commands module, even when the command is small.

Design And Test Docs

docs/ is the source of truth for architecture, tests, and contracts. The master design entry point is docs/design/index.html.

Every public CLI command must have a matching HTML design document under docs/design/cli/. The filename must match the command name, and signoff fails when a registered command is missing its design document.

Commands that accept config files must also define a machine-readable contract and validation tests before release. Command, interface, and standards-exception manifests live under docs/contracts/.

New public features, commands, and external dependencies need explicit justification in the commit, PR, or linked plan. Prefer the standard library and existing dependencies unless a new dependency has a clear install, licensing, and maintenance case.

Every public dataclass and major interface needs design documentation under docs/design/api/. L99 signoff fails when interface docs or Rack test ownership are missing.

Fixture Model

Active fixtures live under:

  • tests/L0_foundation/cases/api_responses

Broader fixture families should use this shape when needed:

  • input/
  • reference_output/
  • output/

output/ is transient and should stay local or temporary.

Scope Boundaries

Core package responsibilities:

  • parse EasyEDA-native JSON structures into typed Python objects
  • preserve EasyEDA-native semantics
  • expose a clean parser/API surface for downstream converters

Deferred or downstream responsibilities:

  • command-line workflow applications
  • Altium, KiCad, or other EDA conversion policy
  • private project corpus handling

Documentation

License

MIT.

Metadata

Release files for easyeda-monkey 2026.9.11

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for easyeda-monkey 2026.9.11
File Size Uploaded
easyeda_monkey-2026.9.11.tar.gz 144.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for easyeda-monkey 2026.9.11
File Interpreter ABI Platform
easyeda_monkey-2026.9.11-py3-none-any.whl Python 3 none any Details

Total release size: 173.0 kB

Release files / easyeda_monkey-2026.9.11.tar.gz

Download URL easyeda_monkey-2026.9.11.tar.gz
Size 144.3 kB
Tags Source
SHA-256 checksum
How to use checksums
c2f2dffe5add56a3f6646c665b4e64872c1bc6c7ff52cac5e6c3f4c9e2be9a70
BLAKE2b-256 checksum
How to use checksums
96a40c8ca6917782308a7f53c160947948e90892dfe143c73c55733d013e90f2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 12, 2026.

Transparency log

Release files / easyeda_monkey-2026.9.11-py3-none-any.whl

Download URL easyeda_monkey-2026.9.11-py3-none-any.whl
Size 28.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
a0f47afbae1ef4cc9e93c5adbe2b742376383c862f019a8c358753e6bedff324
BLAKE2b-256 checksum
How to use checksums
17a0463cd59613a074b67a4ab71e70314343cfe2fccc79b7c6da1b2e3ff74407
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 12, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

2026.9.11 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page