{"id":46116949,"url":"https://github.com/ribeirohugo/go_middlewares","last_synced_at":"2026-03-01T23:33:45.356Z","repository":{"id":282611720,"uuid":"949124319","full_name":"ribeirohugo/go_middlewares","owner":"ribeirohugo","description":"Go Middlewares aggregates standard middlewares (as JWT, CORS, Logging, ...) that are commonly used by different applications.","archived":false,"fork":false,"pushed_at":"2025-11-22T23:55:04.000Z","size":75,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-11-23T01:17:01.974Z","etag":null,"topics":["auth","cors","golang","jwt","logger"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ribeirohugo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-03-15T18:23:49.000Z","updated_at":"2025-11-22T23:54:37.000Z","dependencies_parsed_at":null,"dependency_job_id":"7f186b9b-f162-4cbf-80a0-d2dd473d68c9","html_url":"https://github.com/ribeirohugo/go_middlewares","commit_stats":null,"previous_names":["ribeirohugo/go_middlewares"],"tags_count":17,"template":false,"template_full_name":null,"purl":"pkg:github/ribeirohugo/go_middlewares","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ribeirohugo%2Fgo_middlewares","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ribeirohugo%2Fgo_middlewares/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ribeirohugo%2Fgo_middlewares/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ribeirohugo%2Fgo_middlewares/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ribeirohugo","download_url":"https://codeload.github.com/ribeirohugo/go_middlewares/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ribeirohugo%2Fgo_middlewares/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29987698,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-01T22:42:38.399Z","status":"ssl_error","status_checked_at":"2026-03-01T22:41:51.863Z","response_time":124,"last_error":"SSL_read: 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":["auth","cors","golang","jwt","logger"],"created_at":"2026-03-01T23:33:44.924Z","updated_at":"2026-03-01T23:33:45.340Z","avatar_url":"https://github.com/ribeirohugo.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Go Middlewares\n\nGo Middlewares is a packages repository, developed in Golang, that aggregates standard middlewares\nthat are commonly used by different applications.\n\n## 1.1. JWT Middleware\n\n[JWT](pkg/jwt) is a middleware for handling JSON Web Tokens (JWT) to securely authenticate and authorize\nHTTP and HTTPS requests, ensuring that only valid and properly signed tokens are processed for\naccess control and user verification.\n\n## 1.2. CORS Middleware\n\n[CORS](pkg/cors) is a middleware responsible for handling Cross-Origin Resource Sharing (CORS) policies\nby allowing or blocking HTTP requests based on their origin.\n\n## 1.3. Logger Middleware\n\n[Logger](pkg/logger) is a middleware responsible for logging HTTP request data, including the request method,\nURL, and remote address. It helps track incoming requests and provides useful debugging information.\n\n## 1.4. Prometheus Middleware\n\n[Prometheus](pkg/prometheus) is a middleware designed for monitoring HTTP requests by collecting key metrics\nsuch as request count, response duration, and status codes.\nIt enables seamless integration with Prometheus for real-time performance tracking and observability.\n\n## 1.5. Loki Middleware\n\n[Loki](pkg/loki) is a middleware responsible for logging HTTP request data to a Loki server.\nIt captures essential request details such as the request method, URL, and remote address, ensuring structured\nlogging for better observability and debugging.\n\n## 1.6. Tracing Middleware\n[Tracing](pkg/tracing) middleware is responsible for instrumenting HTTP requests with OpenTelemetry tracing.\nIt captures key request details, such as the request method, URL, and remote address, allowing for distributed\ntracing and improved observability. By integrating with OpenTelemetry, this middleware helps track request flows\nacross services, making it easier to debug performance bottlenecks and failures.\n\n## 2. Authentication package\n\n[Authentication](pkg/authentication) is an authentication package that uses claims and JWT to manage user\nauthentication.\n\nIt holds a middleware subpackages for handling JSON Web Tokens (JWT) to securely authenticate and authorize\nHTTP and HTTPS requests, ensuring that only valid and properly signed tokens are processed for\naccess control and user verification.\n\n## 2.1. Context JWT Authentication\n[Authentication](pkg/authentication/context) is a middleware that uses JWT tokens to validate users authentication\nusing context and claims.\n\n## 2.2. Redis JWT Authentication\n[Authentication](pkg/authentication/redis) is a middleware that uses context claims with Redis cache to validate\nJWT logged in tokens.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fribeirohugo%2Fgo_middlewares","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fribeirohugo%2Fgo_middlewares","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fribeirohugo%2Fgo_middlewares/lists"}