├── .github └── workflows │ ├── rust.yml │ └── typos.yml ├── .gitignore ├── .typos.toml ├── CONTRIBUTING.md ├── Cargo.toml ├── LICENSE-Apache ├── LICENSE-MIT ├── README.md ├── crates ├── aide-macros │ ├── Cargo.toml │ └── src │ │ └── lib.rs └── aide │ ├── CHANGELOG.md │ ├── Cargo.toml │ ├── README.md │ ├── cliff.toml │ ├── res │ ├── redoc │ │ └── redoc.standalone.js │ ├── scalar │ │ ├── rust-theme.css │ │ └── scalar.standalone.min.js │ └── swagger │ │ ├── swagger-ui-bundle.js │ │ ├── swagger-ui.css │ │ └── update.sh │ └── src │ ├── axum │ ├── inputs.rs │ ├── mod.rs │ ├── outputs.rs │ └── routing │ │ ├── mod.rs │ │ └── typed.rs │ ├── error.rs │ ├── generate.rs │ ├── helpers │ ├── mod.rs │ ├── no_api.rs │ ├── use_api.rs │ └── with_api.rs │ ├── impls │ ├── bytes.rs │ ├── http.rs │ ├── mod.rs │ └── serde_qs.rs │ ├── lib.rs │ ├── macros.rs │ ├── openapi │ ├── callback.rs │ ├── components.rs │ ├── contact.rs │ ├── discriminator.rs │ ├── encoding.rs │ ├── example.rs │ ├── external_documentation.rs │ ├── header.rs │ ├── info.rs │ ├── license.rs │ ├── link.rs │ ├── media_type.rs │ ├── mod.rs │ ├── openapi.rs │ ├── operation.rs │ ├── parameter.rs │ ├── paths.rs │ ├── reference.rs │ ├── request_body.rs │ ├── responses.rs │ ├── schema.rs │ ├── security_requirement.rs │ ├── security_scheme.rs │ ├── server.rs │ ├── server_variable.rs │ ├── status_code.rs │ ├── tag.rs │ └── variant_or.rs │ ├── operation.rs │ ├── redoc │ └── mod.rs │ ├── scalar │ └── mod.rs │ ├── swagger │ └── mod.rs │ ├── transform.rs │ └── util.rs └── examples ├── example-axum-worker ├── .gitignore ├── Cargo.toml ├── README.md ├── package.json ├── src │ ├── README.md │ ├── docs.rs │ ├── errors.rs │ ├── lib.rs │ ├── state.rs │ └── todos │ │ ├── mod.rs │ │ └── routes.rs └── wrangler.toml └── example-axum ├── Cargo.toml ├── README.md └── src ├── README.md ├── docs.rs ├── errors.rs ├── main.rs ├── state.rs └── todos ├── mod.rs └── routes.rs /.github/workflows/rust.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/.github/workflows/rust.yml -------------------------------------------------------------------------------- /.github/workflows/typos.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/.github/workflows/typos.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/.gitignore -------------------------------------------------------------------------------- /.typos.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/.typos.toml -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/CONTRIBUTING.md -------------------------------------------------------------------------------- /Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/Cargo.toml -------------------------------------------------------------------------------- /LICENSE-Apache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/LICENSE-Apache -------------------------------------------------------------------------------- /LICENSE-MIT: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/LICENSE-MIT -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/README.md -------------------------------------------------------------------------------- /crates/aide-macros/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide-macros/Cargo.toml -------------------------------------------------------------------------------- /crates/aide-macros/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide-macros/src/lib.rs -------------------------------------------------------------------------------- /crates/aide/CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/CHANGELOG.md -------------------------------------------------------------------------------- /crates/aide/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/Cargo.toml -------------------------------------------------------------------------------- /crates/aide/README.md: -------------------------------------------------------------------------------- 1 | # Aide 2 | 3 | A code-first API documentation and utility library. 4 | -------------------------------------------------------------------------------- /crates/aide/cliff.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/cliff.toml -------------------------------------------------------------------------------- /crates/aide/res/redoc/redoc.standalone.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/res/redoc/redoc.standalone.js -------------------------------------------------------------------------------- /crates/aide/res/scalar/rust-theme.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/res/scalar/rust-theme.css -------------------------------------------------------------------------------- /crates/aide/res/scalar/scalar.standalone.min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/res/scalar/scalar.standalone.min.js -------------------------------------------------------------------------------- /crates/aide/res/swagger/swagger-ui-bundle.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/res/swagger/swagger-ui-bundle.js -------------------------------------------------------------------------------- /crates/aide/res/swagger/swagger-ui.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/res/swagger/swagger-ui.css -------------------------------------------------------------------------------- /crates/aide/res/swagger/update.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/res/swagger/update.sh -------------------------------------------------------------------------------- /crates/aide/src/axum/inputs.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/axum/inputs.rs -------------------------------------------------------------------------------- /crates/aide/src/axum/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/axum/mod.rs -------------------------------------------------------------------------------- /crates/aide/src/axum/outputs.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/axum/outputs.rs -------------------------------------------------------------------------------- /crates/aide/src/axum/routing/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/axum/routing/mod.rs -------------------------------------------------------------------------------- /crates/aide/src/axum/routing/typed.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/axum/routing/typed.rs -------------------------------------------------------------------------------- /crates/aide/src/error.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/error.rs -------------------------------------------------------------------------------- /crates/aide/src/generate.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/generate.rs -------------------------------------------------------------------------------- /crates/aide/src/helpers/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/helpers/mod.rs -------------------------------------------------------------------------------- /crates/aide/src/helpers/no_api.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/helpers/no_api.rs -------------------------------------------------------------------------------- /crates/aide/src/helpers/use_api.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/helpers/use_api.rs -------------------------------------------------------------------------------- /crates/aide/src/helpers/with_api.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/helpers/with_api.rs -------------------------------------------------------------------------------- /crates/aide/src/impls/bytes.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/impls/bytes.rs -------------------------------------------------------------------------------- /crates/aide/src/impls/http.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/impls/http.rs -------------------------------------------------------------------------------- /crates/aide/src/impls/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/impls/mod.rs -------------------------------------------------------------------------------- /crates/aide/src/impls/serde_qs.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/impls/serde_qs.rs -------------------------------------------------------------------------------- /crates/aide/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/lib.rs -------------------------------------------------------------------------------- /crates/aide/src/macros.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/macros.rs -------------------------------------------------------------------------------- /crates/aide/src/openapi/callback.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/openapi/callback.rs -------------------------------------------------------------------------------- /crates/aide/src/openapi/components.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/openapi/components.rs -------------------------------------------------------------------------------- /crates/aide/src/openapi/contact.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/openapi/contact.rs -------------------------------------------------------------------------------- /crates/aide/src/openapi/discriminator.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/openapi/discriminator.rs -------------------------------------------------------------------------------- /crates/aide/src/openapi/encoding.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/openapi/encoding.rs -------------------------------------------------------------------------------- /crates/aide/src/openapi/example.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/openapi/example.rs -------------------------------------------------------------------------------- /crates/aide/src/openapi/external_documentation.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/openapi/external_documentation.rs -------------------------------------------------------------------------------- /crates/aide/src/openapi/header.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/openapi/header.rs -------------------------------------------------------------------------------- /crates/aide/src/openapi/info.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/openapi/info.rs -------------------------------------------------------------------------------- /crates/aide/src/openapi/license.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/openapi/license.rs -------------------------------------------------------------------------------- /crates/aide/src/openapi/link.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/openapi/link.rs -------------------------------------------------------------------------------- /crates/aide/src/openapi/media_type.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/openapi/media_type.rs -------------------------------------------------------------------------------- /crates/aide/src/openapi/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/openapi/mod.rs -------------------------------------------------------------------------------- /crates/aide/src/openapi/openapi.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/openapi/openapi.rs -------------------------------------------------------------------------------- /crates/aide/src/openapi/operation.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/openapi/operation.rs -------------------------------------------------------------------------------- /crates/aide/src/openapi/parameter.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/openapi/parameter.rs -------------------------------------------------------------------------------- /crates/aide/src/openapi/paths.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/openapi/paths.rs -------------------------------------------------------------------------------- /crates/aide/src/openapi/reference.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/openapi/reference.rs -------------------------------------------------------------------------------- /crates/aide/src/openapi/request_body.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/openapi/request_body.rs -------------------------------------------------------------------------------- /crates/aide/src/openapi/responses.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/openapi/responses.rs -------------------------------------------------------------------------------- /crates/aide/src/openapi/schema.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/openapi/schema.rs -------------------------------------------------------------------------------- /crates/aide/src/openapi/security_requirement.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/openapi/security_requirement.rs -------------------------------------------------------------------------------- /crates/aide/src/openapi/security_scheme.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/openapi/security_scheme.rs -------------------------------------------------------------------------------- /crates/aide/src/openapi/server.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/openapi/server.rs -------------------------------------------------------------------------------- /crates/aide/src/openapi/server_variable.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/openapi/server_variable.rs -------------------------------------------------------------------------------- /crates/aide/src/openapi/status_code.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/openapi/status_code.rs -------------------------------------------------------------------------------- /crates/aide/src/openapi/tag.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/openapi/tag.rs -------------------------------------------------------------------------------- /crates/aide/src/openapi/variant_or.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/openapi/variant_or.rs -------------------------------------------------------------------------------- /crates/aide/src/operation.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/operation.rs -------------------------------------------------------------------------------- /crates/aide/src/redoc/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/redoc/mod.rs -------------------------------------------------------------------------------- /crates/aide/src/scalar/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/scalar/mod.rs -------------------------------------------------------------------------------- /crates/aide/src/swagger/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/swagger/mod.rs -------------------------------------------------------------------------------- /crates/aide/src/transform.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/transform.rs -------------------------------------------------------------------------------- /crates/aide/src/util.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/crates/aide/src/util.rs -------------------------------------------------------------------------------- /examples/example-axum-worker/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | build/ 3 | .wrangler/ -------------------------------------------------------------------------------- /examples/example-axum-worker/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/examples/example-axum-worker/Cargo.toml -------------------------------------------------------------------------------- /examples/example-axum-worker/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/examples/example-axum-worker/README.md -------------------------------------------------------------------------------- /examples/example-axum-worker/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/examples/example-axum-worker/package.json -------------------------------------------------------------------------------- /examples/example-axum-worker/src/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/examples/example-axum-worker/src/README.md -------------------------------------------------------------------------------- /examples/example-axum-worker/src/docs.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/examples/example-axum-worker/src/docs.rs -------------------------------------------------------------------------------- /examples/example-axum-worker/src/errors.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/examples/example-axum-worker/src/errors.rs -------------------------------------------------------------------------------- /examples/example-axum-worker/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/examples/example-axum-worker/src/lib.rs -------------------------------------------------------------------------------- /examples/example-axum-worker/src/state.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/examples/example-axum-worker/src/state.rs -------------------------------------------------------------------------------- /examples/example-axum-worker/src/todos/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/examples/example-axum-worker/src/todos/mod.rs -------------------------------------------------------------------------------- /examples/example-axum-worker/src/todos/routes.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/examples/example-axum-worker/src/todos/routes.rs -------------------------------------------------------------------------------- /examples/example-axum-worker/wrangler.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/examples/example-axum-worker/wrangler.toml -------------------------------------------------------------------------------- /examples/example-axum/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/examples/example-axum/Cargo.toml -------------------------------------------------------------------------------- /examples/example-axum/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/examples/example-axum/README.md -------------------------------------------------------------------------------- /examples/example-axum/src/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/examples/example-axum/src/README.md -------------------------------------------------------------------------------- /examples/example-axum/src/docs.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/examples/example-axum/src/docs.rs -------------------------------------------------------------------------------- /examples/example-axum/src/errors.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/examples/example-axum/src/errors.rs -------------------------------------------------------------------------------- /examples/example-axum/src/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/examples/example-axum/src/main.rs -------------------------------------------------------------------------------- /examples/example-axum/src/state.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/examples/example-axum/src/state.rs -------------------------------------------------------------------------------- /examples/example-axum/src/todos/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/examples/example-axum/src/todos/mod.rs -------------------------------------------------------------------------------- /examples/example-axum/src/todos/routes.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tamasfe/aide/HEAD/examples/example-axum/src/todos/routes.rs --------------------------------------------------------------------------------