Python Mypy

Open-source Python projects categorized as Mypy

Top 23 Python Mypy Projects

  • strawberry

    A GraphQL library for Python that leverages type annotations 🍓

  • Project mention: My PHP Problems | news.ycombinator.com | 2024-02-20

    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!

  • Project mention: This Week in Python (February 23, 2024) | dev.to | 2024-02-23

    returns – Make your functions return something meaningful, typed, and safe

  • 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.

    WorkOS logo
  • refurb

    A tool for refurbishing and modernizing Python codebases (by dosisod)

  • django-stubs

    PEP-484 stubs for Django

  • Project mention: Mypy 1.6 Released | news.ycombinator.com | 2023-10-17

    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.

  • nbQA

    Run ruff, isort, pyupgrade, mypy, pylint, flake8, and more on Jupyter Notebooks

  • Project mention: Jupyter lab code formatter? | /r/learnpython | 2023-05-14
  • Deal

    🤝 Design by contract for Python. Write bug-free code. Add a few decorators, get static analysis and tests for free.

  • classes

    Smart, pythonic, ad-hoc, typed polymorphism for Python

  • 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.

    InfluxDB logo
  • 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-29

    Try aiomonitor

  • sqlalchemy-stubs

    Mypy plugin and stubs for SQLAlchemy

  • python-blueprint

    🐍 Example Python project using best practices 🥇

  • Project mention: Which scaffolding package should I use? | /r/Python | 2023-11-02

    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.

  • nitpick

    Enforce the same settings on multiple projects

  • typedload

    Python library to load dynamically typed data into statically typed data structures

  • lagom

    📦 Autowiring dependency injection container for python 3 (by meadsteve)

  • Wagtail-Pipit

    Pipit is a Wagtail CMS boilerplate which aims to provide an easy and modern developer workflow with a React-rendered frontend.

  • ancv

    Renders your (JSON) resume/CV for online & pretty terminal display

  • Project mention: Show HN: Tech Jobs on the Command Line | news.ycombinator.com | 2024-03-06

    There is something similar https://github.com/alexpovel/ancv/

  • cachew

    Transparent and persistent cache/serialization powered by type hints

  • phantom-types

    Phantom types for Python.

  • mmpm

    MagicMirror Package Manager

  • docopt-ng

    Humane command line arguments parser. Now with maintenance, typehints, and complete test coverage.

  • pfun

    Functional, composable, asynchronous, type-safe Python.

  • pandas-stubs

    Pandas type stubs. Helps you type-check your code. (by VirtusLab)

  • fastapi-microservice-template

    A template for a FastAPI based Serverless Framework microservice running on AWS Lambda

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2024-03-06.

Python Mypy related posts

Index

What are some of the best open-source Mypy projects in Python? This list will help you:

Project Stars
1 strawberry 3,749
2 returns 3,259
3 refurb 2,445
4 django-stubs 1,448
5 nbQA 959
6 Deal 690
7 classes 641
8 aiomonitor 618
9 sqlalchemy-stubs 558
10 python-blueprint 525
11 mypy_boto3_builder 482
12 nitpick 383
13 typedload 252
14 lagom 244
15 Wagtail-Pipit 224
16 ancv 219
17 cachew 207
18 phantom-types 182
19 mmpm 171
20 docopt-ng 156
21 pfun 146
22 pandas-stubs 117
23 fastapi-microservice-template 80
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com