golang-jwt/jwt

Go implementation of JSON Web Tokens (JWT).

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 57 minutes ago
Added to GitGenius on September 7th, 2026
Created on May 18th, 2021
Open Issues & Pull Requests: 54 (+0)
GitHub issues: Enabled
Number of forks: 442
Total Stargazers: 9,218 (+0)
Total Subscribers: 39 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 4.8 hours
Mean response time: 47.0 days
90th percentile: 116.3 days
Tracked items: 47

How this project is maintained

Around half of the issues opened in the past year never receive a reply. Only 5% of issues opened in the past year have been closed. Three people close 74% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 16
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 686 days
Stale 30+ days: 13
Stale 90+ days: 11

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • jwt-go: legacy (4)
  • documentation (2)
  • enhancement (2)
  • next (2)

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

jwt is a Go implementation of JSON Web Tokens (JWT) that handles both parsing and verification as well as generation and signing of tokens.

The library solves the problem of securely creating and validating JWT tokens in Go applications. It supports multiple signing algorithms including HMAC SHA, RSA, RSA-PSS, and ECDSA, with extensibility hooks for adding custom algorithms. The implementation enforces that key types match the expected algorithm to help developers avoid common security pitfalls, though the README emphasizes that users should independently verify the algorithm presented in a token matches what they expect.

Developers adopting this tool should be aware that it maintains backward compatibility with the original upstream library while having undergone significant maintenance transitions. The project moved to dedicated open source maintainers after the original author suggested migration. Version 4.0.0 added Go module support while maintaining backward compatibility with older versions, and version 5.0.0 introduced major improvements to token validation but is not entirely backward compatible. The library's support for Go versions aligns with Go's official release policy, supporting each major version until two newer releases exist.

The project maintains active engagement with security concerns, documenting known vulnerabilities and providing migration guidance for users upgrading between major versions. Development activity shows sustained attention to the library's role in authentication workflows, with comprehensive documentation and examples provided on a dedicated website. The maintainers have established clear policies around Go version support tied to upstream security practices rather than arbitrary timelines.