Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/josverl/micropython-stubs

Stubs of most MicroPython ports, boards and versions to make writing code that much simpler.
https://github.com/josverl/micropython-stubs

awesome-micropython micropython mypy mypy-stubs pycharm-ide pylance pylint pyright pyscript static-typing type-checking type-stubs vscode

Last synced: 3 days ago
JSON representation

Stubs of most MicroPython ports, boards and versions to make writing code that much simpler.

Awesome Lists containing this project

README

        

# MicroPython Stubs: Enhance Your Development Experience

[![Documentation Status](https://readthedocs.org/projects/micropython-stubs/badge/?version=main)](https://micropython-stubs.readthedocs.io/en/latest/?badge=main "Document build status badge")
[![Star on GitHub](https://img.shields.io/github/stars/josverl/micropython-stubs.svg?style=social)](https://github.com/josverl/micropython-stubs/stargazers)
[![All Contributors](https://img.shields.io/badge/all_contributors-19-green.svg?style=flat-square)](#Contributions)
[![Black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/python/black "Black badge")
[![Checked with pyright](https://microsoft.github.io/pyright/img/pyright_badge.svg)](https://microsoft.github.io/pyright/)
[![Checked with pyright](https://github.com/Josverl/micropython-stubs/actions/workflows/test_stub_quality.yml/badge.svg?branch=main)](https://microsoft.github.io/pyright/)

Welcome to the MicroPython Stubs repository!

Here, you’ll find a treasure trove of over 3,000 stub files generated by the MicroPython-Stubber tool. Whether you’re just starting out or a seasoned developer, these stubs are designed to supercharge your MicroPython development process.

Stubs are like cheat sheets for your code. They provide hints, auto-completion, and static type checking, making your life as a developer easier and more productive. Here’s what you can expect from these MicroPython stubs:

* Faster Coding: With stubs, you’ll write code more quickly and confidently. No more guessing function names or parameters!
* Fewer Errors: Stubs help catch mistakes early. If you provide incorrect arguments, you’ll get immediate feedback.
* Code Completion: Say goodbye to endless Bingling. Stubs provide context-aware auto-completion, even for board-specific features.
* Static Type Checking: By adding typing information, you’ll catch type-related bugs before they cause runtime issues.

![demo](docs/img/demo.gif)

#### Installation

For installation instructions and configuration of your preferred IDE, please refer to the [documentation](https://micropython-stubs.readthedocs.io/en/main/)
## Explore Available Stubs

Curious about which versions, ports, and boards are covered? Check out the [online viewer](https://flatgithub.com/Josverl/micropython-stubs/?filename=all_modules.json) or search for [MicroPython stub packages on PyPI](https://pypi.org/search/?q=-stubs&o=&c=Programming+Language+%3A%3A+Python+%3A%3A+Implementation+%3A%3A+MicroPython).

For a comprehensive overview of all stubs, dive into the documentation on [the documentation on read the docs](https://micropython-stubs.readthedocs.io/en/main/firmware_grp.html).

## Sponsoring

In order to build accurate stubs I need access to a board to flash it with a specific version of MicroPython and run part of the stubbing software (createsubs.py) on the board.

You can help me by:

- running the software and sharing a PR with the generated MCU stubs,

- sending me a spare board you may have,

- or by sponsoring me though Github

## Contributors

Thanks to everyone that has submitted stubs or other relevant pieces of code and information, or published relevant stubs on pypi or github.



Jos Verlinde
Jos Verlinde

💻 📝 🔧
MicroPython
MicroPython

🔣 📝
Boris Lovosevic
Boris Lovosevic

🔣 📝
Paul Sokolovsky
Paul Sokolovsky

🔣 📝
pycopy
pycopy

🔣 📝
Pycom
Pycom

🚇
Braden Mars
Braden Mars

📝 🔧 📦


Paul Sokolovsky
Paul Sokolovsky

📝
Daryl Stultz
Daryl Stultz

📝
Patrick
Patrick

📝
Callum Jacob Hays
Callum Jacob Hays

💡 🔬
Ronald Hiemstra
Ronald Hiemstra

📝 🖋 📖
Chris Wood
Chris Wood

📝 🔧
thingslu
thingslu

📝


Matin Tat
Matin Tat


Roberto Jose Etcheverry Romero
Roberto Jose Etcheverry Romero


jdsmith
jdsmith


Mr Keuz
Mr Keuz

💻
Matt Trentini
Matt Trentini

📝
Andrew St Clair
Andrew St Clair

📝
Michal Moravec
Michal Moravec

🐛


Paul
Paul

🔧 📝 🐛
Sam Duke
Sam Duke

🐛

I invite everyone that has generated stubs for a board or port not on the current list, or has another contribution, to submit the stubs via a pull request or by just zipping up your stubs and creating an issue.

This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification.

[Discussions]: https://github.com/orgs/micropython/discussions/categories/general