{"id":33934263,"url":"https://github.com/netwo-io/garde-actix-web","last_synced_at":"2026-04-07T04:31:47.077Z","repository":{"id":191918098,"uuid":"685988208","full_name":"netwo-io/garde-actix-web","owner":"netwo-io","description":"Actix-web wrapper for garde, a Rust validation library.","archived":false,"fork":false,"pushed_at":"2025-04-29T09:50:08.000Z","size":77,"stargazers_count":10,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-12-14T01:14:01.525Z","etag":null,"topics":["actix-web","rust","web"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/netwo-io.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2023-09-01T13:22:06.000Z","updated_at":"2025-08-15T09:00:46.000Z","dependencies_parsed_at":"2024-05-02T23:34:49.110Z","dependency_job_id":"0dd73eba-a19b-4e95-a1b9-73c87bf12f36","html_url":"https://github.com/netwo-io/garde-actix-web","commit_stats":null,"previous_names":["netwo-io/garde-actix-web"],"tags_count":14,"template":false,"template_full_name":null,"purl":"pkg:github/netwo-io/garde-actix-web","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/netwo-io%2Fgarde-actix-web","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/netwo-io%2Fgarde-actix-web/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/netwo-io%2Fgarde-actix-web/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/netwo-io%2Fgarde-actix-web/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/netwo-io","download_url":"https://codeload.github.com/netwo-io/garde-actix-web/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/netwo-io%2Fgarde-actix-web/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31500397,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-07T03:10:19.677Z","status":"ssl_error","status_checked_at":"2026-04-07T03:10:13.982Z","response_time":105,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["actix-web","rust","web"],"created_at":"2025-12-12T13:33:00.652Z","updated_at":"2026-04-07T04:31:47.071Z","avatar_url":"https://github.com/netwo-io.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Garde-actix-web \u0026emsp; [![Documentation]][docs.rs] [![Latest Version]][crates.io] [![Build Status]][build]\n\n[docs.rs]: https://docs.rs/garde-actix-web/\n\n[crates.io]: https://crates.io/crates/garde-actix-web\n\n[build]: https://github.com/netwo-io/garde-actix-web/actions/workflows/build.yaml?branch=main\n\n[Documentation]: https://img.shields.io/docsrs/garde-actix-web\n\n[Latest Version]: https://img.shields.io/crates/v/garde-actix-web.svg\n\n[Build Status]: https://github.com/netwo-io/garde-actix-web/actions/workflows/build.yaml/badge.svg?branch=main\n\nActix-web wrapper for [garde](https://github.com/jprochazk/garde), a Rust validation library.\n\n- [Installation](#installation)\n- [Usage example](#usage-example)\n- [Feature flags](#feature-flags)\n- [Compatibility matrix](#compatibility-matrix)\n- [About us](#about-us)\n\n### Installation\n\n```toml\n[dependencies]\ngarde = \"0.22\"\ngarde-actix-web = \"0.12\"\n```\n\n### Usage example\n\nSimply use `garde-actix-web` exposed types as a drop in for actix types.\n\nYour types must implement `Validate` from `garde`. Validation happens during actix's `FromRequest` invocation.\n\nIf the payload is invalid, a 400 error is returned (404 for Path).\n\nCustom error handling can be implemented with an extractor config (`garde_actix_web::web::QueryConfig` in place\nof `actix_web::web::QueryConfig` for example).\n\n```rust\nuse actix_web::HttpResponse;\n// instead of actix_web::web::Path\nuse garde_actix_web::web::Path;\nuse garde::Validate;\n\n#[derive(Validate)]\nstruct MyStruct\u003c'a\u003e {\n  #[garde(ascii, length(min = 3, max = 25))]\n  username: \u0026'a str,\n}\n\nfn test(id: Path\u003cMyStruct\u003e) -\u003e HttpResponse {\n  todo!()\n}\n```\nContext needs to be provided through actix's `data` or `app_data`, if not found default will be used instead.\n\n### Feature flags\n\n| name       | description                                                    | extra dependencies                              |\n|------------|----------------------------------------------------------------|-------------------------------------------------|\n| `serde_qs` | Enables the usage of `garde` for `serde_qs::actix::QsQuery\u003cT\u003e` | [`serde_qs`](https://crates.io/crates/serde_qs) |\n\n### Compatibility matrix\n\n| garde version | serde_qs version | garde-actix-web-version |\n|---------------|------------------|-------------------------|\n| `0.14`        | `0.12`           | `0.1.x`                 |\n| `0.15`        | `0.12`           | `0.2.x`                 |\n| `0.16`        | `0.12`           | `0.3.x`                 |\n| `0.17`        | `0.12`           | `0.4.x`                 |\n| `0.18`        | `0.12`           | `0.5.x`, `0.6.x`        |\n| `0.18`        | `0.13`           | `0.7.x`                 |\n| `0.19`        | `0.13`           | `0.8.x`                 |\n| `0.20`        | `0.13`           | `0.9.x`                 |\n| `0.20`        | `0.13`           | `0.10.x`                |\n| `0.22`        | `0.13`           | `0.11.x`                |\n| `0.22`        | `0.15`           | `0.12.x`                |\n\n### About us\n\nGarde-actix-web is provided by [Netwo](https://www.netwo.io).\n\nWe use this crate for our internal needs and therefore are committed to its maintenance, however we cannot provide any\nadditional guaranty. Use it at your own risks.\n\nWhile we won't invest in any feature we don't need, we are open to accept any pull request you might propose.\n\nWe are a France based full-remote company operating in the telecom sector. If you are interested in learning more, feel\nfree to visit [our career page](https://www.netwo.io/carriere).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnetwo-io%2Fgarde-actix-web","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnetwo-io%2Fgarde-actix-web","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnetwo-io%2Fgarde-actix-web/lists"}