adafruit-circuitpython-typing
Types needed for type annotation that are not in `typing`
What it is and what it does
This package supplies type annotation definitions needed for CircuitPython development that do not exist in Python's standard typing module. It is designed to support developers writing type-annotated CircuitPython code on host machines, particularly when using tools like Adafruit-Blinka for testing and development. The package depends on Adafruit-Blinka, adafruit-circuitpython-busdevice, adafruit-circuitpython-requests, and typing_extensions to provide a complete typing environment.
The library is explicitly not required at runtime for CircuitPython code execution and does not need to be included in CircuitPython bundles deployed to microcontroller boards. It serves as a development-time dependency for developers using type checkers and IDEs to validate their CircuitPython projects before deployment.
Use it for:
- Type-checking CircuitPython projects on a development machine using mypy or similar tools
- Providing IDE autocomplete and type hints when writing CircuitPython code in an editor
- Validating type annotations in CircuitPython libraries before publishing to the ecosystem
- Supporting Adafruit hardware projects that use Blinka for cross-platform compatibility
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Provides type annotation definitions for CircuitPython code that extend the standard typing module with additional types not available in the base library.
Yes, if you are developing CircuitPython code and want type-checking support on your development machine. Install it as a development dependency (not in your CircuitPython bundle). The package is actively maintained, has no known vulnerabilities, and carries a permissive MIT license. Low install friction and clear scope make it a straightforward addition to a CircuitPython development workflow.
Install
adafruit-circuitpython-typing on PyPI
pip
pip install adafruit-circuitpython-typinguv
uv add adafruit-circuitpython-typingpoetry
poetry add adafruit-circuitpython-typingInstalling adafruit-circuitpython-typing
Before you install
Low install friction with a pure-Python wheel distribution. Active maintenance with last commit on 2026-04-23 and a recent release on 2025-10-27, indicating ongoing support for the CircuitPython ecosystem.
License in practice
MIT license is permissive, allowing use in both open-source and proprietary projects with minimal restrictions.
Quickstart
pip install adafruit-circuitpython-typing
import adafruit_circuitpython_typing
# Use type annotations from the module in your CircuitPython code
Requires Python 3.8 or later; intended primarily for type-checking CircuitPython projects rather than runtime use on microcontroller boards.
Verify before relying
- What specific type definitions this package adds beyond the standard typing module
- Whether this is meant for development/type-checking only or also for runtime on CircuitPython boards
Package facts
| License | MIT (permissive) |
| Python support | supports the current Python release (>=3.8) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 4 — Adafruit-Blinka, adafruit-circuitpython-busdevice, adafruit-circuitpython-requests, typing_extensions |
| Maintenance | actively maintained — 291 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 160,291/month — #10,667 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: adafruit_circuitpython_typing-1.12.3-py3-none-any.whl
Keywords: adafruit, blinka, circuitpython, micropython, circuitpython_typing
Tags
More Libraries packages
urllib3 is an HTTP client library that provides…
permissive · top 100 on PyPI
requestsRequests is a Python HTTP library that…
permissive · top 100 on PyPI
pluggyPluggy provides a plugin system that lets you…
permissive · top 100 on PyPI
python-dateutilProvides parsing, arithmetic, and recurrence…
permissive · top 100 on PyPI
sixSix provides utility functions to write Python…
permissive · top 100 on PyPI
pytestpytest is a testing framework that lets you…
permissive · top 100 on PyPI
adafruit-circuitpython-requestsA requests-like HTTP library for CircuitPython…
permissive · top 15,000 on PyPI
adafruit-circuitpython-busdeviceProvides I2CDevice and SPIDevice helper classes…
permissive · top 15,000 on PyPI
adafruit-circuitpython-connectionmanagerManages sockets and connections for…
permissive · top 15,000 on PyPI
Adafruit-BlinkaAdafruit-Blinka emulates CircuitPython APIs on…
permissive · top 15,000 on PyPI
Adafruit-PlatformDetectDetects the chip and board type of single-board…
permissive · top 15,000 on PyPI
gpiozerogpiozero provides a high-level Python interface…
permissive · top 15,000 on PyPI
akracerAKRacer provides precompiled dynamic libraries…
permissive · top 5,000 on PyPI
Adafruit-PureIOProvides pure Python access to Linux I2C and…
permissive · top 15,000 on PyPI
autotypingAutomatically infers and adds type annotations…
permissive · top 15,000 on PyPI
RPi.GPIORPi.GPIO provides Python control over Raspberry…
permissive · top 15,000 on PyPI