Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/avanov/openapi-client-generator
Generates Python client packages from OpenAPI v3 specifications. The project aims at supporting any generic valid specification.
https://github.com/avanov/openapi-client-generator
codegen http-client mypy oas3 openapi openapi3 parsing python3 rest-api specification swagger typing validation
Last synced: about 1 month ago
JSON representation
Generates Python client packages from OpenAPI v3 specifications. The project aims at supporting any generic valid specification.
- Host: GitHub
- URL: https://github.com/avanov/openapi-client-generator
- Owner: avanov
- License: mit
- Created: 2020-12-27T02:47:03.000Z (almost 4 years ago)
- Default Branch: develop
- Last Pushed: 2022-06-19T16:10:56.000Z (over 2 years ago)
- Last Synced: 2024-09-28T13:22:24.651Z (about 2 months ago)
- Topics: codegen, http-client, mypy, oas3, openapi, openapi3, parsing, python3, rest-api, specification, swagger, typing, validation
- Language: Python
- Homepage:
- Size: 102 KB
- Stars: 8
- Watchers: 3
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.rst
- Changelog: CHANGELOG.rst
- Funding: .github/FUNDING.yml
- License: LICENSE.txt
Awesome Lists containing this project
README
.. _badges:
.. image:: https://github.com/avanov/openapi-client-generator/workflows/CI/badge.svg?branch=develop
:target: https://github.com/avanov/openapi-client-generator/actions?query=branch%3Adevelop.. image:: https://coveralls.io/repos/github/avanov/openapi-client-generator/badge.svg?branch=develop
:target: https://coveralls.io/github/avanov/openapi-client-generator?branch=develop.. image:: https://requires.io/github/avanov/openapi-client-generator/requirements.svg?branch=master
:target: https://requires.io/github/avanov/openapi-client-generator/requirements/?branch=master
:alt: Requirements Status.. image:: https://readthedocs.org/projects/openapi-client-generator/badge/?version=latest
:target: https://openapi-client-generator.readthedocs.io/en/latest/
:alt: Documentation Status.. image:: http://img.shields.io/pypi/v/openapi-client-generator.svg
:target: https://pypi.python.org/pypi/openapi-client-generator
:alt: Latest PyPI ReleaseOpenAPI Client Generator
========================This CLI utility allows you to generate Python client packages from OpenAPI v3 specifications.
The project aims at supporting any generic valid specification.Features
--------* works on Python 3.8 and above;
* generates clients with type hints to aid static analysis of higher level interfaces that would use the clients;
* supports streaming endpoints.Installation
------------You can install it from PyPI:
.. code-block:: bash
pip install openapi-client-generator
Afterwards, use a CLI utility called ``openapi-client-generator``:
.. code-block:: bash
$ openapi-client-generator --help
usage: openapi-client-generator [-h] [-V] {gen} ...OpenAPI Client Generator
optional arguments:
-h, --help show this help message and exit
-V, --version show program's version number and exitsub-commands:
valid sub-commands{gen} additional help
gen Generate client for a provided schema (JSON, YAML).Contributing
============Cloning this repo
-----------------The proper way to clone this repo is:
.. code-block:: bash
git clone --recurse-submodules
cd# for showing submodule status with `git status`
git config status.submodulesummary 1# for logging submodule diff with `git diff`
git config diff.submodule logTest framework
--------------The project uses `Nix `_ for bootstrapping its dev environment.
You can run existing test suite with
.. code::
$ nix-shell --run "make test"
Documentation
-------------Documentation is hosted on ReadTheDocs: https://openapi-client-generator.readthedocs.io/en/develop/
Changelog
---------See `CHANGELOG `_.
LICENSE
-------MIT