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

Example Projects

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
  • Fast worktree setup (CoW-clone .venv + Zig cache/output, then pip install -e):
ato dev worktree <new-branch-name>
cd ../<new-branch-name>
./ato --help

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.14.1004.tar.gz (10.3 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.14.1004-cp314-cp314t-musllinux_1_2_x86_64.whl (7.3 MB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ x86-64

atopile-0.14.1004-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (7.3 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

atopile-0.14.1004-cp314-cp314t-macosx_11_0_arm64.whl (3.0 MB view details)

Uploaded CPython 3.14tmacOS 11.0+ ARM64

atopile-0.14.1004-cp314-cp314t-macosx_10_15_x86_64.whl (3.1 MB view details)

Uploaded CPython 3.14tmacOS 10.15+ x86-64

atopile-0.14.1004-cp314-cp314-win_amd64.whl (3.2 MB view details)

Uploaded CPython 3.14Windows x86-64

atopile-0.14.1004-cp314-cp314-musllinux_1_2_x86_64.whl (7.3 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ x86-64

atopile-0.14.1004-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (7.3 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

atopile-0.14.1004-cp314-cp314-macosx_11_0_arm64.whl (3.0 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

atopile-0.14.1004-cp314-cp314-macosx_10_15_x86_64.whl (3.1 MB view details)

Uploaded CPython 3.14macOS 10.15+ x86-64

File details

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

File metadata

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

File hashes

Hashes for atopile-0.14.1004.tar.gz
Algorithm Hash digest
SHA256 88bd59b97a7db1f38337222ecb2cb9723eb43107aded5b4591c7b9c1ed59440a
MD5 14ee77248dd6d52d5d0a2a10f25d5178
BLAKE2b-256 ab694f3eb86a3382d7bdec987cab764c53274a743f6400f4f6bb5d4d8dbe1ff0

See more details on using hashes here.

Provenance

The following attestation bundles were made for atopile-0.14.1004.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.14.1004-cp314-cp314t-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for atopile-0.14.1004-cp314-cp314t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 b59ea21254d4d219e003c1d6333c1179a513131654049d3ec822ee684c3a0ad1
MD5 17c7918a9be321077d8b0af25e9bdd52
BLAKE2b-256 a27dd9732cebd13c8d1a48155b74dafcb64273b321e3d7ac34c819874aa6cb55

See more details on using hashes here.

Provenance

The following attestation bundles were made for atopile-0.14.1004-cp314-cp314t-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.14.1004-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for atopile-0.14.1004-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 97ef65b6a413c9a12e68ee8088e2b24df55727192aeeb42776ff74feca850bbd
MD5 a227eb8d6df5b88535b1b6d4c285f87c
BLAKE2b-256 176bb5800d8870fc83d46479f0867b4bacdbc64c328866d6ed62d6ed712ade46

See more details on using hashes here.

Provenance

The following attestation bundles were made for atopile-0.14.1004-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_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.14.1004-cp314-cp314t-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for atopile-0.14.1004-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 401033c63ef7b6b92156ae051d382fe05ba21f6553f4472d5f3bf66bdc1183d7
MD5 c97f446d92039597be3603f5a96d6dff
BLAKE2b-256 10275c08ecc6fc6dc1f18f7362192814c535732dcaed38c00dda20aeaaab59e2

See more details on using hashes here.

Provenance

The following attestation bundles were made for atopile-0.14.1004-cp314-cp314t-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.14.1004-cp314-cp314t-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for atopile-0.14.1004-cp314-cp314t-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 e16b0272120823d4131fce55ba3ac1286b904cee5c9bb322d6cb7bc0174124ea
MD5 34a2827faa59a2424dee0de689071df0
BLAKE2b-256 ed067012504df66e07721b05168c963e63f10f9ef75c7222864e0215537cd29c

See more details on using hashes here.

Provenance

The following attestation bundles were made for atopile-0.14.1004-cp314-cp314t-macosx_10_15_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.14.1004-cp314-cp314-win_amd64.whl.

File metadata

File hashes

Hashes for atopile-0.14.1004-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 69d90550b0c86a27c9488d1af5732cd91ae63fc4eff1247bcb639d5361832b62
MD5 aa965ba4af8cd3473ca6a9daa3383b70
BLAKE2b-256 4c7dbaa97e2f3235801e09279ed37513e61a3c3efac274ea55337dbffecb7e89

See more details on using hashes here.

Provenance

The following attestation bundles were made for atopile-0.14.1004-cp314-cp314-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.14.1004-cp314-cp314-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for atopile-0.14.1004-cp314-cp314-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 3b031a223811b5d83226be6cff3b21fa5aa02479c60cc809b06a97d01e4e6cc2
MD5 9ca8d8d1a339b86d0e7a2781300c385d
BLAKE2b-256 5fa3ca5f561942814ae684458931ce77e9e09e81f6ff02f006f052547338389b

See more details on using hashes here.

Provenance

The following attestation bundles were made for atopile-0.14.1004-cp314-cp314-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.14.1004-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for atopile-0.14.1004-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 bfceef4dc4a55af52722dca0ebfb6e250af0037e691c4ed848d8409d628cad5d
MD5 dc27852907da20f9163feff21a6e28fc
BLAKE2b-256 cab40364abda81157549c50aee23e21fd4796b3f50e25bcdb16e350ea32f02f4

See more details on using hashes here.

Provenance

The following attestation bundles were made for atopile-0.14.1004-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_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.14.1004-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for atopile-0.14.1004-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 514c718572226a575883a52c5b96e9449cfdaefbfb70e192d8db66ffa21b8761
MD5 cd90da71e17ade50d683d5501c95b600
BLAKE2b-256 937473bf05e7a219094611320afecf2a2cd7a2c1aca7f43e27ea027d2585d45d

See more details on using hashes here.

Provenance

The following attestation bundles were made for atopile-0.14.1004-cp314-cp314-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.14.1004-cp314-cp314-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for atopile-0.14.1004-cp314-cp314-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 d6e7055fa44e89b4a17c090ef77a0416d387ad3b14d681a9d61a1f109adda799
MD5 2cee7de732bf546ff325ffc2a4807f63
BLAKE2b-256 11ecd637189cd57985e230700b8f79e8fb51851b804964976ea0e577bb3adc34

See more details on using hashes here.

Provenance

The following attestation bundles were made for atopile-0.14.1004-cp314-cp314-macosx_10_15_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