Skip to main content

Electronic component reference database with ASCII pinout diagrams

Project description

partinfo

Datasheet-verified electronic component pinouts, specs, and ASCII diagrams — in your terminal, fully offline.

partinfo is an offline command-line reference for electronic parts and connectors: pinouts, key specs, typical applications, and the gotchas that bite you in practice. Every entry is a hand-curated, datasheet-verified JSON file (the source of truth), indexed into SQLite with full-text search. 228 parts, 25 connectors, and a library of formula references — all bundled, no network needed.

Built for agents as much as humans: structured --json on every lookup and a ready-made skill so Claude Code or Codex reach for partinfo's verified numbers instead of hallucinating a pinout — or a thermal resistance — from memory.

Why

Datasheets are slow to open and pin-numbering traps are easy to forget (the BC547 is C-B-E, the 2N3904 is E-B-C; the LM317 tab is the output but the 7805 tab is ground). partinfo answers those in one command, with the package drawn in ASCII so you can wire it without opening a PDF.

Install

pip install partinfo

Usage

partinfo ne555                  # full entry
partinfo irlz44n --ascii        # ASCII package diagram
partinfo lm317 --specs          # key specs only
partinfo search "can transceiver"

# connectors & cables
partinfo conn obd-ii            # OBD-II / DB9 / USB-C / eurorack power / MIDI ...
partinfo conn gallery           # every connector diagram

# formula references
partinfo ref list               # ohms-law, rc-time-constant, mosfet-parameters, ne555-formulas ...
partinfo ref mosfet-parameters  # formulas + a variable legend

partinfo gallery                # every part's diagram, for a scroll

The diagram is generated, not drawn

The ASCII pinout is rendered from the same verified pin table as the specs, so the picture and the data can't disagree. Pins are colored by function on a real terminal and drop to plain when piped or read by a script/model — override with --color {auto,semantic,minimal,mixed,off} or NO_COLOR=1.

It computes, not just looks up

Every part stores its calculation inputs (rds_on_ohm, rth_ja_cw, ...) and the reference library stores the formulas, so real questions get answered from verified numbers. "Is an IRF520 safe switching 3 A in still air?" → pull Rds(on) = 0.27 Ω and Rth(JA) = 62 °C/W, apply P = I²·R and Tj = Ta + P·Rth(JA)Tj ≈ 176 °C, past the limit. The datasheet's 9 A headline is a thermal lie without a heatsink, and partinfo plus one formula proves it. --json hands the field names straight to a formula's variables — which is exactly how the skill lets an AI do this grounded, instead of guessing.

Data model

Each part is one JSON file validated by a Pydantic schema — packages (pins with number / name / type / description), specs, gotchas, related, datasheet_url. Connectors and references use the same approach, so every entry — yours or mine — is structurally identical, and diagrams render straight from the pin data. Add a part by dropping a JSON file in its category folder and running partinfo ingest.

The JSON ships inside the package; the SQLite index is a derived cache at ~/.local/share/partinfo/parts.db, built automatically on first use.

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

partinfo-0.1.0.tar.gz (263.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

partinfo-0.1.0-py3-none-any.whl (453.6 kB view details)

Uploaded Python 3

File details

Details for the file partinfo-0.1.0.tar.gz.

File metadata

  • Download URL: partinfo-0.1.0.tar.gz
  • Upload date:
  • Size: 263.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for partinfo-0.1.0.tar.gz
Algorithm Hash digest
SHA256 84dbf62e68c426940528cf60385d19ea6e08919747b5c9a67c1b83d7c3e6cb3b
MD5 f8cfeabb2c705d6623e9bb89dca52a4e
BLAKE2b-256 d18be12230bd075b5ed36ddd42651472b3f4883997fc08b990f340b97f95da80

See more details on using hashes here.

Provenance

The following attestation bundles were made for partinfo-0.1.0.tar.gz:

Publisher: publish.yml on hed0rah/partinfo

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file partinfo-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: partinfo-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 453.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for partinfo-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 74894ab2d937142e5ddcc00d52feb31a03475fff0ebefe8c9b37aaf1140e5331
MD5 b9114d6ee523be468e09809473386716
BLAKE2b-256 474e3a6e4d6766307b166a7af15d10a31122a09a44534a61c4bcf9566d663a82

See more details on using hashes here.

Provenance

The following attestation bundles were made for partinfo-0.1.0-py3-none-any.whl:

Publisher: publish.yml on hed0rah/partinfo

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page