Metadata-Version: 2.3
Name: lapidary-render
Version: 0.12.0
Summary: Python async OpenAPI client library generator
License: AGPL-3.0
Keywords: OpenAPI,OpenAPI3,CodeGen,Code Generation,Code Generator,OpenAPI Tools
Author: Rafał Krupiński
Author-email: rafal@lapidary.dev
Requires-Python: ~=3.13
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: Operating System :: OS Independent
Classifier: Topic :: Software Development :: Code Generators
Classifier: Typing :: Typed
Requires-Dist: asyncclick (>=8,<9)
Requires-Dist: httpx (>=0.28,<0.29)
Requires-Dist: libcst (>=1.5,<2.0)
Requires-Dist: openapi-pydantic (>=0.5,<0.6)
Requires-Dist: pybase62 (>=1,<2)
Requires-Dist: pydantic (>=2,<3)
Requires-Dist: python-mimeparse (>=1.6,<3.0)
Requires-Dist: ruamel-yaml (>=0.18,<0.19)
Requires-Dist: tomli-w (>=1,<2)
Project-URL: Homepage, https://lapidary.dev/
Project-URL: Repository, https://github.com/python-lapidary/lapidary-render
Description-Content-Type: text/markdown

# Lapidary render

[![.github/workflows/test.yml](https://github.com/python-lapidary/lapidary-render/actions/workflows/test.yml/badge.svg)](https://github.com/python-lapidary/lapidary-render/actions/workflows/test.yml)

Lapidary-render is a program that generates Python Web API clients from OpenAPI documents.

## Why

OpenAPI is a machine readable description of Web APIs. A large subset of it is very well suited for automatic translation to a client code.

## How

Lapidary render uses [Jinja](https://jinja.palletsprojects.com/) to generate client code, but most of the translation from OpenAPI to python is implemented in python itself. This makes it easier to read and maintain the generator itself.

Instead of generating large pieces of code that convert data and call http libraries, Lapidary generates code that uses [Lapidary runtime library](https://github.com/python-lapidary/lapidary). It's also a way to greatly simplify the code, at the expense of small runtime overhead related to processing method signatures.

