{"id":13800755,"url":"https://github.com/orsinium-labs/typeforce","last_synced_at":"2025-04-15T21:25:45.842Z","repository":{"id":49170485,"uuid":"358250048","full_name":"orsinium-labs/typeforce","owner":"orsinium-labs","description":"Make mypy more effective","archived":false,"fork":false,"pushed_at":"2022-09-30T09:37:05.000Z","size":13,"stargazers_count":19,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-29T01:34:14.128Z","etag":null,"topics":["cli","code-quality","mypy","mypy-stubs","python","python-types","python3","qa","typing"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/orsinium-labs.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-04-15T12:26:03.000Z","updated_at":"2024-04-21T20:15:32.000Z","dependencies_parsed_at":"2022-07-30T15:38:49.731Z","dependency_job_id":null,"html_url":"https://github.com/orsinium-labs/typeforce","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/orsinium-labs%2Ftypeforce","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/orsinium-labs%2Ftypeforce/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/orsinium-labs%2Ftypeforce/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/orsinium-labs%2Ftypeforce/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/orsinium-labs","download_url":"https://codeload.github.com/orsinium-labs/typeforce/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249155819,"owners_count":21221668,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cli","code-quality","mypy","mypy-stubs","python","python-types","python3","qa","typing"],"created_at":"2024-08-04T00:01:15.975Z","updated_at":"2025-04-15T21:25:45.821Z","avatar_url":"https://github.com/orsinium-labs.png","language":"Python","funding_links":[],"categories":["Tools"],"sub_categories":["Working with types"],"readme":"# typeforce\n\n**Typeforce** is a CLI tool that enriches your Python environment with type annotations, empowering [mypy](https://mypy.readthedocs.io/en/stable/).\n\nIn particular:\n\n+ Generates `py.typed` for annotated packages.\n+ Installs missed stub files and plugins.\n\n## py.typed\n\n[PEP-561](https://www.python.org/dev/peps/pep-0561/) says the following:\n\n\u003e Package maintainers who wish to support type checking of their code MUST add a marker file named py.typed to their package supporting typing.\n\nIn practice, many maintainers don't know about this marker. So there are tons of packages that do have type annotations but don't have `py.typed`.\n\nTypeforce checks all installed third-party packages and adds `py.typed` into packages that have type annotations.\n\n## stubs and plugins\n\nOne of the breaking changes [mypy 0.900 introduced](http://mypy-lang.blogspot.com/2021/06/mypy-0900-released.html?m=1) is moving out all [stubs](https://mypy.readthedocs.io/en/stable/stubs.html) and plugins for third-party packages out of mypy itself. Now, stub files for every such package should be installed manually.\n\nTypeforce scans all installed third-party packages and installs all needed stub files and plugins if available.\n\n## Installation\n\n```bash\npython3 -m pip install --user typeforce\n```\n\n## Usage\n\n```bash\npython3 -m typeforce --exe python3.9\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Forsinium-labs%2Ftypeforce","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Forsinium-labs%2Ftypeforce","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Forsinium-labs%2Ftypeforce/lists"}