├── .github ├── dependabot.yml └── workflows │ ├── docs.yml │ └── main.yml ├── .gitignore ├── LICENSE ├── README.md ├── docs ├── advanced.md ├── basics.md ├── extending.md ├── index.md ├── js │ └── linked_tabs.js └── resources.md ├── examples ├── __init__.py ├── hal │ ├── __init__.py │ ├── __main__.py │ ├── app.py │ └── data.py ├── siren │ ├── __init__.py │ ├── __main__.py │ ├── app.py │ └── data.py └── url_for │ ├── __init__.py │ ├── __main__.py │ ├── app.py │ └── data.py ├── fastapi_hypermodel ├── __init__.py ├── base │ ├── __init__.py │ ├── hypermodel.py │ ├── url_type.py │ └── utils.py ├── hal │ ├── __init__.py │ ├── hal_hypermodel.py │ └── hal_response.py ├── py.typed ├── siren │ ├── __init__.py │ ├── siren_action.py │ ├── siren_base.py │ ├── siren_field.py │ ├── siren_hypermodel.py │ ├── siren_link.py │ ├── siren_response.py │ └── siren_schema.py └── url_for │ ├── __init__.py │ └── url_for.py ├── mkdocs.yml ├── pyproject.toml ├── tests ├── __init__.py ├── conftest.py ├── integration │ ├── __init__.py │ ├── hal │ │ ├── conftest.py │ │ ├── test_hal_items.py │ │ └── test_hal_people.py │ ├── siren │ │ ├── conftest.py │ │ ├── test_siren_items.py │ │ └── test_siren_people.py │ └── url_for │ │ ├── conftest.py │ │ ├── test_url_for_items.py │ │ └── test_url_for_people.py ├── test_hal.py ├── test_hypermodel.py ├── test_siren.py ├── test_url_for.py ├── test_url_type.py └── test_utility_functions.py └── tox.ini /.github/dependabot.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/.github/dependabot.yml -------------------------------------------------------------------------------- /.github/workflows/docs.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/.github/workflows/docs.yml -------------------------------------------------------------------------------- /.github/workflows/main.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/.github/workflows/main.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/.gitignore -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/README.md -------------------------------------------------------------------------------- /docs/advanced.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/docs/advanced.md -------------------------------------------------------------------------------- /docs/basics.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/docs/basics.md -------------------------------------------------------------------------------- /docs/extending.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/docs/extending.md -------------------------------------------------------------------------------- /docs/index.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/docs/index.md -------------------------------------------------------------------------------- /docs/js/linked_tabs.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/docs/js/linked_tabs.js -------------------------------------------------------------------------------- /docs/resources.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/docs/resources.md -------------------------------------------------------------------------------- /examples/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /examples/hal/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/examples/hal/__init__.py -------------------------------------------------------------------------------- /examples/hal/__main__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/examples/hal/__main__.py -------------------------------------------------------------------------------- /examples/hal/app.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/examples/hal/app.py -------------------------------------------------------------------------------- /examples/hal/data.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/examples/hal/data.py -------------------------------------------------------------------------------- /examples/siren/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/examples/siren/__init__.py -------------------------------------------------------------------------------- /examples/siren/__main__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/examples/siren/__main__.py -------------------------------------------------------------------------------- /examples/siren/app.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/examples/siren/app.py -------------------------------------------------------------------------------- /examples/siren/data.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/examples/siren/data.py -------------------------------------------------------------------------------- /examples/url_for/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/examples/url_for/__init__.py -------------------------------------------------------------------------------- /examples/url_for/__main__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/examples/url_for/__main__.py -------------------------------------------------------------------------------- /examples/url_for/app.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/examples/url_for/app.py -------------------------------------------------------------------------------- /examples/url_for/data.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/examples/url_for/data.py -------------------------------------------------------------------------------- /fastapi_hypermodel/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/fastapi_hypermodel/__init__.py -------------------------------------------------------------------------------- /fastapi_hypermodel/base/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/fastapi_hypermodel/base/__init__.py -------------------------------------------------------------------------------- /fastapi_hypermodel/base/hypermodel.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/fastapi_hypermodel/base/hypermodel.py -------------------------------------------------------------------------------- /fastapi_hypermodel/base/url_type.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/fastapi_hypermodel/base/url_type.py -------------------------------------------------------------------------------- /fastapi_hypermodel/base/utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/fastapi_hypermodel/base/utils.py -------------------------------------------------------------------------------- /fastapi_hypermodel/hal/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/fastapi_hypermodel/hal/__init__.py -------------------------------------------------------------------------------- /fastapi_hypermodel/hal/hal_hypermodel.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/fastapi_hypermodel/hal/hal_hypermodel.py -------------------------------------------------------------------------------- /fastapi_hypermodel/hal/hal_response.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/fastapi_hypermodel/hal/hal_response.py -------------------------------------------------------------------------------- /fastapi_hypermodel/py.typed: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /fastapi_hypermodel/siren/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/fastapi_hypermodel/siren/__init__.py -------------------------------------------------------------------------------- /fastapi_hypermodel/siren/siren_action.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/fastapi_hypermodel/siren/siren_action.py -------------------------------------------------------------------------------- /fastapi_hypermodel/siren/siren_base.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/fastapi_hypermodel/siren/siren_base.py -------------------------------------------------------------------------------- /fastapi_hypermodel/siren/siren_field.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/fastapi_hypermodel/siren/siren_field.py -------------------------------------------------------------------------------- /fastapi_hypermodel/siren/siren_hypermodel.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/fastapi_hypermodel/siren/siren_hypermodel.py -------------------------------------------------------------------------------- /fastapi_hypermodel/siren/siren_link.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/fastapi_hypermodel/siren/siren_link.py -------------------------------------------------------------------------------- /fastapi_hypermodel/siren/siren_response.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/fastapi_hypermodel/siren/siren_response.py -------------------------------------------------------------------------------- /fastapi_hypermodel/siren/siren_schema.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/fastapi_hypermodel/siren/siren_schema.py -------------------------------------------------------------------------------- /fastapi_hypermodel/url_for/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/fastapi_hypermodel/url_for/__init__.py -------------------------------------------------------------------------------- /fastapi_hypermodel/url_for/url_for.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/fastapi_hypermodel/url_for/url_for.py -------------------------------------------------------------------------------- /mkdocs.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/mkdocs.yml -------------------------------------------------------------------------------- /pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/pyproject.toml -------------------------------------------------------------------------------- /tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/conftest.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/tests/conftest.py -------------------------------------------------------------------------------- /tests/integration/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/integration/hal/conftest.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/tests/integration/hal/conftest.py -------------------------------------------------------------------------------- /tests/integration/hal/test_hal_items.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/tests/integration/hal/test_hal_items.py -------------------------------------------------------------------------------- /tests/integration/hal/test_hal_people.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/tests/integration/hal/test_hal_people.py -------------------------------------------------------------------------------- /tests/integration/siren/conftest.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/tests/integration/siren/conftest.py -------------------------------------------------------------------------------- /tests/integration/siren/test_siren_items.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/tests/integration/siren/test_siren_items.py -------------------------------------------------------------------------------- /tests/integration/siren/test_siren_people.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/tests/integration/siren/test_siren_people.py -------------------------------------------------------------------------------- /tests/integration/url_for/conftest.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/tests/integration/url_for/conftest.py -------------------------------------------------------------------------------- /tests/integration/url_for/test_url_for_items.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/tests/integration/url_for/test_url_for_items.py -------------------------------------------------------------------------------- /tests/integration/url_for/test_url_for_people.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/tests/integration/url_for/test_url_for_people.py -------------------------------------------------------------------------------- /tests/test_hal.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/tests/test_hal.py -------------------------------------------------------------------------------- /tests/test_hypermodel.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/tests/test_hypermodel.py -------------------------------------------------------------------------------- /tests/test_siren.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/tests/test_siren.py -------------------------------------------------------------------------------- /tests/test_url_for.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/tests/test_url_for.py -------------------------------------------------------------------------------- /tests/test_url_type.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/tests/test_url_type.py -------------------------------------------------------------------------------- /tests/test_utility_functions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/tests/test_utility_functions.py -------------------------------------------------------------------------------- /tox.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtc42/fastapi-hypermodel/HEAD/tox.ini --------------------------------------------------------------------------------