Skip to main content

A toolchain bringing the best of software development to the real-world!

Project description

Shows a black logo in light color mode and a white one in dark color mode.

PyPI Docs Packages Discord License

Design circuit boards with code

Write hardware like software. atopile is a language, compiler, and toolchain for electronics—declarative .ato files, deep validation, and layout that works natively with KiCad.

atopile editor with a project open

Why atopile

  • Reusable modules instead of starting from scratch every time
  • Capture intent with equations directly in your design
  • Automatic parametric picking of discrete components

Install

The easiest way is via the editor extension—it installs and manages ato for you:

Advanced setups and CLI installs: https://docs.atopile.io/atopile/guides/install

Quickstart (2 minutes)

  1. Install the extension (link above)

  2. In the editor, run “atopile: Open Example” and pick one

  3. Press the ▶ in the ato menu bar to build, or run ato build from the terminal

  4. Open layout when ready

Notes:

  • The ato menu bar is in the bottom-left of your VS Code/Cursor window
  • KiCad is optional to get started. Without it, you won’t open the PCB, but builds still run and update the .kicad_pcb. Install later when you’re ready for layout: https://docs.atopile.io/atopile/quickstart

How it works

  • ato is a declarative language for electronics: modules, interfaces, units, tolerances, and assertions
  • The compiler solves constraints, picks parts, runs checks, and updates your KiCad layout
  • The extension adds language services and one‑click controls

Learn more: https://docs.atopile.io/atopile/essentials/1-the-ato-language

Where atopile fits in

High-level steps:

  • Requirements — capture specs with units, tolerances, and assertions
  • Component selection — parametric picking, reuse proven modules
  • Design capture — .ato modules and interfaces compose your system
  • Layout — place and route in KiCad
  • Checks — run design checks locally or in CI
  • Build outputs — BOM, fabrication and assembly data, reports
  • PCB fab/assembly — send outputs to your manufacturer

Examples

Packages and parts

Compatibility

  • OS: macOS, Linux, Windows (WSL recommended)
  • Recommended editors: VS Code / Cursor
  • EDA: KiCad recommended for layout; not required to start

Contributing and development

pytest -q

Support

License

MIT. See LICENSE.

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

atopile-0.12.4.tar.gz (5.1 MB view details)

Uploaded Source

Built Distributions

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

atopile-0.12.4-cp313-cp313-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.13Windows x86-64

atopile-0.12.4-cp313-cp313-musllinux_1_2_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

atopile-0.12.4-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (921.4 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

atopile-0.12.4-cp313-cp313-macosx_11_0_arm64.whl (873.3 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

atopile-0.12.4-cp313-cp313-macosx_10_13_x86_64.whl (884.8 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

File details

Details for the file atopile-0.12.4.tar.gz.

File metadata

  • Download URL: atopile-0.12.4.tar.gz
  • Upload date:
  • Size: 5.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for atopile-0.12.4.tar.gz
Algorithm Hash digest
SHA256 651549dd7d7bfe54b7d5284e2396941eba1bb200cd8226ade6ceb7c945c7ba08
MD5 1b899c18949d9745a1c2a3ef20ce11a1
BLAKE2b-256 5ae59dfdae58a7c27b97d4459557a478d5430ea02de4cb024b0712a6de1818f4

See more details on using hashes here.

Provenance

The following attestation bundles were made for atopile-0.12.4.tar.gz:

Publisher: deploy.yml on atopile/atopile

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

File details

Details for the file atopile-0.12.4-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: atopile-0.12.4-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 1.0 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for atopile-0.12.4-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 a89e950ee5a954f79a048846ff021592c0e5e5801f5dd8845f723ab1a310c2f5
MD5 3cdcd35eecd53b1e4ed4ad216a4a4866
BLAKE2b-256 d14512f46223e23bd0b3859054541763106d607b724afec7017e51379ebaecbb

See more details on using hashes here.

Provenance

The following attestation bundles were made for atopile-0.12.4-cp313-cp313-win_amd64.whl:

Publisher: deploy.yml on atopile/atopile

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

File details

Details for the file atopile-0.12.4-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for atopile-0.12.4-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 86ad0f6108faad6a6680c04279960999088e87f29cd57511a70d9fbbd00b68f4
MD5 6eca0e8e95c49ef589479f83b76fec32
BLAKE2b-256 373b9fd861309a5a2b98ac82e790f3204ecc92ca1ebfcc7232379662a16c0fe8

See more details on using hashes here.

Provenance

The following attestation bundles were made for atopile-0.12.4-cp313-cp313-musllinux_1_2_x86_64.whl:

Publisher: deploy.yml on atopile/atopile

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

File details

Details for the file atopile-0.12.4-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for atopile-0.12.4-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8b74e0c4908d28046ec8c07ac3d1e0051c99ecaa83c57b65ce8e1d89b73d4cb1
MD5 123662ed3295ddd23c4cfebf01f1f899
BLAKE2b-256 aa6f8ff56738ffb1f1f8970ac75f65769eb5946f3a58fccd4dc8770d2caa68b4

See more details on using hashes here.

Provenance

The following attestation bundles were made for atopile-0.12.4-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: deploy.yml on atopile/atopile

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

File details

Details for the file atopile-0.12.4-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for atopile-0.12.4-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0bbac3acfcbfcf88e0fc813c5043c1dc6f44b05136e6eb13d09c7e7a769cbc98
MD5 01b1b31b6d1fe71ba4681c4ef15a0905
BLAKE2b-256 b625e08655fd73f9271d94f24817309f1e438789b92db0d76798466bab75104f

See more details on using hashes here.

Provenance

The following attestation bundles were made for atopile-0.12.4-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: deploy.yml on atopile/atopile

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

File details

Details for the file atopile-0.12.4-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for atopile-0.12.4-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 c0a01d7f346c092531419e4d20b3130bb7665a5e3d4855df98484bcbebda92a5
MD5 faffc4d4c60c6d2ea6d011d9174f7f21
BLAKE2b-256 9fe5575cd95e181463e3a98883fb4fecfed79d1619255999340507b57a957b32

See more details on using hashes here.

Provenance

The following attestation bundles were made for atopile-0.12.4-cp313-cp313-macosx_10_13_x86_64.whl:

Publisher: deploy.yml on atopile/atopile

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