The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning. Learn more →
Top 23 Mypy Open-Source Projects
-
have a look to http://strawberry.rocks for Python.
I've still to find a better code first implementation too
-
returns – Make your functions return something meaningful, typed, and safe
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
-
awesome-python-typing
Collection of awesome Python types, stubs, plugins, and tools to work with them.
Project mention: A Tale of Two Kitchens - Hypermodernizing Your Python Code Base | dev.to | 2023-11-12Awesome Python Typing
-
Pyright doesn't work with Django, as Django's so dynamic that it requires a plugin to infer all types correctly. Sadly, even mypy with plugins is a mess to get set up in vscode, especially if you want it to use the same config as you use for ci checks from the command line.
We use mypy + [django-stubs](https://github.com/typeddjango/django-stubs) (in a huge Django + drf project at day job) which includes a plugin for mypy allowing it to recognize all reverse relations and manager methods. Mypy is still really rough around the edges. The cli args are poorly documented, and how they correspond to declarations in a mypy.ini / pyproject.toml is mysterious. Match-statements still have bugs even a year after release. Exclusion of untyped / partially typed files and packages we've had to solve with grep filtering mypy's output for our whitelisted set of files, as it's been unable to separate properly between errors you care about (in your own codebase) and errors in others code (dependencies, untypable dynamic python packages etc).
The largest issue IMO is that mypy tried to adapt a java / OOP style way of type system onto python, instead of recognizing the language's real power within duck typing and passing structural types around. Typescript chose the right approach here, modelling javascript the way it is actually written, favoring structural over nominal typing, instead of the archaic and now left-behind way of Java-style OOP that has influenced mypy.
There was a recently accepted PEP which allowed for limited dataclass transforms, enough to cover the @attr.s usecase for both mypy and pyright, but nowhere near expressive enough to cover django's models and ORM sadly. It's probably impossible / undesirable to allow for such rich plugins, so i see the future for proper pluginless typing to be more akin to how pydantic / normal dataclasses solve typing, by starting with a specification of the types, deriving its runtime implementation, instead of plugins having to reverse the type representation of a custom DSL.
-
-
Deal
🤝 Design by contract for Python. Write bug-free code. Add a few decorators, get static analysis and tests for free.
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
-
aiomonitor
aiomonitor is module that adds monitor and python REPL capabilities for asyncio application
Project mention: [Guide] A Tour Through the Python Framework Galaxy: Discovering the Stars | /r/coder_corner | 2023-04-29Try aiomonitor
-
-
I used https://github.com/johnthagen/python-blueprint to build https://github.com/DaveCoDev/not-again-ai. It uses poetry to manage dependencies, sets up automatic linting, testing, and type checking with nox and gets it running with GitHub Actions. It is continually being updated and stays up to date modern Python tooling (ruff, nox, poetry, etc). Not sure why the comments are being so discouraging, but regardless if you are looking to publish a polished library, its super helpful to have these things setup for you.
-
mypy_boto3_builder
Type annotations builder for boto3 compatible with VSCode, PyCharm, Emacs, Sublime Text, pyright and mypy.
-
-
-
-
Wagtail-Pipit
Pipit is a Wagtail CMS boilerplate which aims to provide an easy and modern developer workflow with a React-rendered frontend.
-
There is something similar https://github.com/alexpovel/ancv/
-
-
-
-
docopt-ng
Humane command line arguments parser. Now with maintenance, typehints, and complete test coverage.
-
-
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
Mypy related posts
- infer-types: A CLI tool to automatically add type annotations into Python code. Must have tool for annotating existing code.
- mypy-baseline: Integrate mypy in seconds with existing codebase. A friendly CLI tool to make mypy report only new type violations and ignore existing ones.
- Creating Videos, Tutorials and other Resources for Starlite
- Pyright: Static Type Checker for Python
- How to handle the strongest developer wanting to use a language nobody else knows on a project with a tight deadline?
- mypy-baseline: Integrate mypy in seconds with existing codebase. A friendly CLI tool to make mypy report only new type violations and ignore existing ones.
- Release: Fast Query Parsers
-
A note from our sponsor - WorkOS
workos.com | 28 Mar 2024
Index
What are some of the best open-source Mypy projects? This list will help you:
Project | Stars | |
---|---|---|
1 | strawberry | 3,718 |
2 | returns | 3,226 |
3 | refurb | 2,441 |
4 | awesome-python-typing | 1,554 |
5 | django-stubs | 1,436 |
6 | nbQA | 944 |
7 | Deal | 669 |
8 | classes | 639 |
9 | aiomonitor | 616 |
10 | sqlalchemy-stubs | 555 |
11 | python-blueprint | 510 |
12 | mypy_boto3_builder | 480 |
13 | nitpick | 382 |
14 | typedload | 252 |
15 | lagom | 241 |
16 | Wagtail-Pipit | 222 |
17 | ancv | 217 |
18 | cachew | 207 |
19 | phantom-types | 182 |
20 | mmpm | 168 |
21 | docopt-ng | 149 |
22 | pfun | 146 |
23 | pandas-stubs | 117 |