{"id":23446070,"url":"https://github.com/drogonframework/drogon-assist","last_synced_at":"2025-04-13T15:11:35.077Z","repository":{"id":88405646,"uuid":"365974840","full_name":"drogonframework/drogon-assist","owner":"drogonframework","description":"A 3rd party toolkit for the Drogon web framework","archived":false,"fork":false,"pushed_at":"2024-07-02T21:30:20.000Z","size":31,"stargazers_count":15,"open_issues_count":2,"forks_count":5,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-03-27T06:05:36.051Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/drogonframework.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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}},"created_at":"2021-05-10T08:41:57.000Z","updated_at":"2024-12-15T17:36:38.000Z","dependencies_parsed_at":"2024-12-23T20:32:55.088Z","dependency_job_id":"2176bf2a-e8df-43e0-a625-fc06305bc95f","html_url":"https://github.com/drogonframework/drogon-assist","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/drogonframework%2Fdrogon-assist","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/drogonframework%2Fdrogon-assist/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/drogonframework%2Fdrogon-assist/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/drogonframework%2Fdrogon-assist/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/drogonframework","download_url":"https://codeload.github.com/drogonframework/drogon-assist/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248732484,"owners_count":21152852,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":[],"created_at":"2024-12-23T20:29:33.328Z","updated_at":"2025-04-13T15:11:35.040Z","avatar_url":"https://github.com/drogonframework.png","language":"C++","readme":"# Drogon Assist\n\nDrogon Assist is a 3rd party toolkit (even though the author is a maintainer of Drogon) for features that doesn't make it into Drogon's repository. Either because it is out of scope for the core framework, too much dependency or just because.\n\nDependencies:\n * libbsd (if not on *BSD)\n * Botan-2\n\n**Note:** This library is in early development. The APIs may change without prior notice\n\n**Note:** You need to recompile this library after any update to Drogon. Otherwise ABI incompatablity may cause unexpected issues.\n\n## Features\n\n* Password hashing\n* BasicAuth parsing\n* [HTTP Signature][http_signature] genration and verifing (RSA only)\n* SHA3/Blake2b hash\n* Auxiliary Plugins\n\n## Example\n\n### Easy Password Hashing\n\n```c++\n#include \u003cdrogon/assist/passwdhash.hpp\u003e\n\nstd::string hashed = drassist::passwdhash::hash(\"12456\");\n// ARGON2:QrrB8NQCF5JlfWoA:$argon2id$v=19$m=65536,t=2,p=1$+HCM3JuBVPkeF3QiGo7PdA$zIOLPhwKVdSCUfMtq1zd+rCJ9DSMVhkSV+43TRUGtLw\n\ndrassist::passwdhash::verify(\"123456\", hashed); // true\ndrassist::passwdhash::verify(\"abcdef\", hashed); // false\n```\n\n### Useful Plugins\n\n * Stop HTTP parameter pollution\n\n```json\n/*Add this into Drogon's configuration file*/\n{\n\t\"name\": \"drassist::ParameterPollutionProtector\",\n}\n```\n\n* Remove BOM from common content types\n```json\n/*Add this into Drogon's configuration file*/\n{\n\t\"name\": \"drassist::BOMRemover\",\n}\n```\n\n[http_signature]: https://tools.ietf.org/id/draft-cavage-http-signatures-01.html\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdrogonframework%2Fdrogon-assist","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdrogonframework%2Fdrogon-assist","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdrogonframework%2Fdrogon-assist/lists"}