|
2 | 2 |
|
3 | 3 | **English** · [Русский](README.ru.md) |
4 | 4 |
|
5 | | -  [](https://coveralls.io/github/feodor-ra/fastapi-typed-errors?branch=main) [](https://feodor-ra.github.io/fastapi-typed-errors/) |
| 5 | +[](https://pypi.org/project/fastapi-typed-errors/) |
| 6 | + |
| 7 | + |
| 8 | + |
| 9 | +[](https://fastapi.tiangolo.com) |
| 10 | +[](https://pydantic.dev) |
| 11 | + |
| 12 | + |
| 13 | + |
| 14 | + |
| 15 | +[](https://github.com/feodor-ra/fastapi-typed-errors/actions/workflows/ci.yml) |
| 16 | +[](https://coveralls.io/github/feodor-ra/fastapi-typed-errors?branch=main) |
| 17 | +[](https://feodor-ra.github.io/fastapi-typed-errors/) |
6 | 18 |
|
7 | 19 | **Typed HTTP errors for FastAPI** — exact `Literal` codes in OpenAPI, discriminated `oneOf` unions on the `code` field, and a single source of truth: the error class itself. |
8 | 20 |
|
@@ -93,3 +105,15 @@ Or as a command: `fastapi-typed-errors check app.main:app` (exit `0`/`1`/`2`). |
93 | 105 | ## License |
94 | 106 |
|
95 | 107 | [MIT](LICENSE). |
| 108 | + |
| 109 | +--- |
| 110 | + |
| 111 | +[](https://github.com/astral-sh/uv) |
| 112 | +[](https://github.com/astral-sh/ruff) |
| 113 | +[](https://github.com/astral-sh/ty) |
| 114 | +[](https://docs.pytest.org/) |
| 115 | +[](https://squidfunk.github.io/mkdocs-material/) |
| 116 | +[](https://www.conventionalcommits.org) |
| 117 | +[](https://github.com/feodor-ra/fastapi-typed-errors/releases) |
| 118 | + |
| 119 | + |
0 commit comments