thehardwarestore.ai

where AI agents shop for the right tools

── 99114 repos indexed ── | filtered by tag: oauth2
keycloak/keycloak ★ 37179 9022 APPLICATION

Keycloak is a production-grade open-source Identity and Access Management (IAM) server. In production it provides authentication and authorization for applications via OIDC/OAuth2, SAML, and emerging standards including OID4VC verifiable credentials (SD-JWT, mdoc, LDP), Shared Signals Framework (SSF/CAEP/RISC), WebAuthn passkeys, and CIBA. The server is a modular Java monolith running on Quarkus, exposing REST admin APIs (v1 plus a feature-gated v2), protocol endpoints, and React-based admin/account consoles, with a Kubernetes operator for managed deployment and CLI tools (kc.sh, kcadm.sh, kcreg.sh). The architecture is built around a pervasive SPI/provider-factory pattern: nearly every subsystem (authentication flows, password hashing, event listeners, user storage federation, token introspection, crypto providers, theme selection) is pluggable via ProviderFactory + Spi interfaces, making the system highly extensible. Persistence uses JPA/Hibernate with Liquibase migrations across PostgreSQL, MySQL, MariaDB, Oracle, and MSSQL; distributed caching and cluster events use Infinispan. The codebase also ships Java and TypeScript admin client libraries and legacy WildFly SAML adapters. Primary data flows: browser/device authentication flows produce signed tokens (access, refresh, ID, userinfo) via pluggable crypto providers (BouncyCastle, FIPS 140-2, Elytron); user/session state flows between the database and Infinispan caches with invalidation events; identity brokering federates users from LDAP, Kerberos, and social IdPs; admin operations emit admin and audit events. Test infrastructure is extensive: a new JUnit 5 test framework with DI annotations coexists with a legacy Arquillian suite (migration in progress), plus Playwright e2e tests for the admin UI. This is purely an application repository - no data pipelines or research artifacts. Notable reusable components include a self-contained SD-JWT implementation, a JOSE/JWS/JWK library, and generic utilities (PathMatcher, Retry) that could be extracted into other Java projects with minimal modification.

RATING: 9.9/10 MAINT: active DRIFT: low
▸ 5 reusable components found
openclaw/gogcli ★ 8457 703 APPLICATION

gog is a comprehensive, production-grade CLI tool for Google Workspace automation that unifies 20+ Google services (Gmail, Calendar, Drive, Docs, Sheets, Slides, Forms, Meet, Chat, Contacts, Tasks, Classroom, YouTube, Analytics, Search Console, Admin, Groups, Keep, Photos, Maps, Apps Script) into a single binary. It excels at task-first workflows: searching and sanitizing mail, resolving calendar names, auditing Drive sharing, editing Docs, appending Sheet tables, building Slides from Markdown, managing Workspace users, and performing encrypted backups. The architecture is a modular monolith with clean internal package boundaries for each service domain. Key entry points are cmd/gog/main.go and the Kong-based command tree in internal/cmd. Primary data flows: command invocation -> account/client resolution -> authenticated Google API client creation -> API execution -> structured output (JSON, plain TSV, or human-readable tables). External dependencies include Google APIs, OAuth2, keyring backends (macOS Keychain, Windows Credential Manager, Linux Secret Service, encrypted file), MCP for agent integration, and age encryption for backups. The codebase demonstrates exceptional craftsmanship in cross-platform secret storage, Gmail push notification processing, sed-style Docs editing with UTF-16 index tracking, atomic Docs request batching, encrypted backup with Git shard checkpointing, email open tracking with versioned key rotation and bot detection, and build-time safety profile compilation to hash-based allow/deny switches. Active development with recent commits, comprehensive test coverage (unit + integration + live tests), and modern dependency versions.

RATING: 9.9/10 MAINT: active DRIFT: low
▸ 9 reusable components found
mark3labs/mcp-go ★ 9167 905 APPLICATION

mark3labs/mcp-go is a production-oriented Go SDK implementing both server and client sides of the Model Context Protocol (MCP). The codebase is a library, not a standalone application: it exposes server.NewMCPServer, client.NewClient, and transport constructors for stdio, SSE, Streamable HTTP, and in-process communication. It supports tools, resources, prompts, tasks, sampling, elicitation, roots, completions, subscriptions, multi-round-trip requests, OAuth, OpenTelemetry tracing, schema validation, and cursor-based pagination. The SDK maintains dual-era protocol support, negotiating between legacy handshake-based versions (2024-11-05 through 2025-11-25) and the modern stateless 2026-07-28 core, with automatic per-request era detection and bridging for server-initiated requests. Architecturally, the repository is organized as modular Go packages: mcp defines protocol types and schema helpers, server implements JSON-RPC dispatch, sessions, middleware, hooks, tasks, and HTTP/SSE/stdio transports, while client provides a high-level client plus a transport abstractions layer. Notable engineering strengths include defensively coded transports, resumable SSE streams with event replay, an OAuth layer hardened against RFC 9728 resource-binding attacks, cached JSON Schema validation, and an extensive test suite including conformance tests, race-condition tests, and e2e HTTP tests. The repository also ships a separate otel submodule for OpenTelemetry integration and a docs site under www/. This is purely an application/infrastructure repository; there are no data pipelines, notebooks, or research artifacts. The primary data flow is JSON-RPC messages exchanged between MCP servers and clients, with SSE used for notifications, streaming, and server-to-client requests. The code is strongly standards-driven and tightly tracked to the evolving MCP specification. While the dual-era protocol support adds significant complexity and maintenance burden, the implementation is well-tested, security-conscious, and contains several genuinely reusable components. A few stale example files and commented-out tests exist, but they do not materially affect the quality of the core SDK.

RATING: 9.5/10 MAINT: active DRIFT: low
▸ 5 reusable components found
pocket-id/pocket-id ★ 9605 336 APPLICATION

Pocket ID is a self-hosted OpenID Connect and OAuth 2.0 identity provider centered on passkey (WebAuthn) authentication. In production it acts as an authentication gateway: it serves the OIDC/OAuth endpoints (authorization code with PKCE, device authorization, client credentials, pushed authorization requests, token introspection, userinfo, end-session), performs WebAuthn registration/login ceremonies, issues and rotates signed JWTs, and exposes a SvelteKit admin console for managing users, groups, OIDC clients, API permissions, API keys, application config, and audit logs. It also supports SCIM 2.0 provisioning, LDAP directory sync, one-time access codes, email verification, signup flows, and transactional email notifications with per-user locale. Architecturally it is a modular monolith: a Go backend (backend/cmd/main.go as the entry point) built on Gin, GORM, and a fork of the Fosite OIDC framework, with the SvelteKit frontend embedded and served by the same process. Data flows are typical of an IdP: browser/SP clients hit OIDC endpoints, the backend persists users, tokens, clients, and audit events to SQLite or PostgreSQL (50+ up/down migrations for each), reads/writes user content through a filesystem/S3/database storage abstraction, and delegates ephemeral state and cron jobs (token cleanup, API key expiry, back-channel logout, rate limiting) to the Francis actor runtime. External dependencies include SMTP servers, LDAP directories, SCIM providers, MaxMind GeoLite2 downloads for audit-log geolocation, optional S3-compatible object storage, and optional standalone Francis. The codebase shows strong engineering discipline: dependency-injected services, a layered DTO mapping and validation layer with stable error codes, an authorization scope catalog enforced at the router level, middleware for CSP/CORS/rate limiting/CSRF, a generic TTL cache with singleflight, SSRF-guarded outbound HTTP with per-purpose host allowlists, field-level encrypted strings, and callback-URL wildcard validation. Tests are extensive and include Go unit tests, migration parity checks between SQLite and PostgreSQL, route-scope coverage tests, and Playwright E2E suites. The main maintenance risks are the forked Fosite dependency, the non-trivial operator complexity of the Francis actor runtime, and a high rate of schema migrations; HA mode is explicitly experimental. This is unambiguously an application repository; its only data-adjacent features are IP-geolocation enrichment and an opt-in analytics heartbeat.

RATING: 9.4/10 MAINT: active DRIFT: low
▸ 4 reusable components found
auth0/auth0-spa-js ★ 1010 431 APPLICATION

The auth0-spa-js repository is a JavaScript/TypeScript SDK for authenticating Single Page Applications (SPAs) with Auth0. It implements the Authorization Code Flow with PKCE, providing methods for user login (redirect and popup), silent token acquisition, token refresh, logout, and user information retrieval. The SDK includes advanced features such as Multi-Factor Authentication (MFA), passkey/WebAuthn support, DPoP (Demonstrating Proof of Possession) for token security, Multi-Resource Refresh Tokens (MRRT), and custom token exchange per RFC 8693. Architecture-wise, it is modular with separate concerns: core authentication (Auth0Client), caching (memory and localStorage), storage (cookies and session storage), Web Worker for token operations, and specialized modules for MFA, passkeys, and account management. Key entry points include the `createAuth0Client` factory function and the `Auth0Client` class. The library relies on @auth0/auth0-auth-js for low-level Auth0 interactions and browser-tabs-lock for cross-tab synchronization.

RATING: 9.4/10 MAINT: active DRIFT: low
▸ 3 reusable components found
better-auth/better-auth ★ 30110 2921 APPLICATION

Better Auth is a framework-agnostic authentication and authorization framework for TypeScript, designed as a monorepo with a core library, multiple database adapters (Drizzle, Prisma, Kysely, MongoDB, in-memory), client SDKs (React, Vue, Svelte, Solid, Expo, Electron), and a plugin ecosystem. It supports email/password, OAuth2/OIDC, SAML, SCIM, passkeys, 2FA, phone number OTP, and more. The architecture is modular: the core package provides the `betterAuth()` function, which configures plugins, database adapters, and social providers, and exposes a REST API for authentication flows. Client libraries use nanostores for reactive state management. The CLI offers project scaffolding, migration generation, and schema validation. External dependencies include jose for JWT, zod for validation, and various ORMs for database access. The codebase is well-tested with unit, integration, and e2e tests across all packages, and includes a release tooling package with AI-assisted changelog generation.

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 5 reusable components found
authelia/authelia ★ 29226 1506 APPLICATION

Authelia is a self-hosted, open-source authentication and authorization server providing single sign-on (SSO), multi-factor authentication (MFA), and access control for reverse proxies. The backend is written in Go, using fasthttp for HTTP, koanf for configuration, and supports multiple storage backends (SQLite, PostgreSQL, MySQL) and authentication backends (LDAP, file-based, PAM). It implements a full OpenID Connect 1.0 / OAuth 2.0 provider with certified conformance, WebAuthn (FIDO2) passkeys, TOTP, Duo Push, and passwordless authentication. The frontend is a React/TypeScript single-page application with i18n, custom UI components, and integration with the backend via REST APIs. The architecture follows a service-oriented pattern with middleware chains, configuration validation, and extensive unit and integration tests. The codebase is well-structured, modular, and demonstrates high craftsmanship in areas like timing attack mitigation, clock abstraction for testability, and configuration validation.

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 4 reusable components found
spring-projects/spring-security ★ 9647 6367 APPLICATION

Spring Security is a comprehensive authentication and authorization library for Spring-based applications, supporting both Servlet (MVC) and Reactive (WebFlux) stacks. In production, it intercepts HTTP requests via a configurable filter chain (SecurityFilterChain for servlet, WebFilterChain for reactive) to enforce authentication, session management, CSRF protection, security headers, CORS, and access control. It provides a pluggable architecture with core abstractions (AuthenticationManager, AuthorizationManager, SecurityContextHolderStrategy) and protocol-specific modules for OAuth2/OIDC, SAML2, LDAP, CAS, WebAuthn, Kerberos, and JWT. The library is configured via annotations (@EnableWebSecurity, @EnableMethodSecurity), a Kotlin DSL, or XML namespace, and integrates deeply with Spring's configuration and dependency injection. The architecture is modular: the 'core' module defines foundational interfaces (Authentication, GrantedAuthority, SecurityContext), 'web' implements servlet and reactive security filters, 'config' provides annotation-driven and XML configuration support, and protocol modules (oauth2, saml2, ldap, webauthn, cas) handle specific authentication/authorization flows. Key entry points include the HttpSecurity/ServerHttpSecurity builders, SecurityFilterChain, and method-security annotations (@PreAuthorize, @Secured). External dependencies include Spring Framework, Jackson (for serialization), Project Reactor (for reactive support), OpenSAML, and LDAP libraries. The codebase demonstrates strong engineering practices: extensive use of strategy, composite, and builder patterns; clean separation of servlet and reactive APIs; and a consistent Jackson mixin pattern for serialization of security objects.

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 5 reusable components found
restsharp/RestSharp ★ 9819 2297 APPLICATION

RestSharp is a mature .NET HTTP client library that wraps HttpClient into a fluent request/response API. It is not a standalone application; it ships as NuGet packages consumed by other projects. The core RestClient handles execution through an async pipeline: interceptors, authenticators, request content construction, cookie containers, redirect handling, and response deserialization. RestRequest models parameters (query, header, body, URL segments, cookies, files) and is built fluently through extension methods. Responses are RestResponse<T> with error aggregation and throw helpers, making failure handling explicit and consistent. The architecture is modular: a core library plus optional serializer packages for Newtonsoft.Json, System.Text.Json, XML, and CsvHelper, a DI integration package for Microsoft dependency injection, and a Roslyn source generator that produces immutable and clone variants of configuration types. Authentication is pluggable via IAuthenticator, with built-in Basic, JWT, OAuth1 signature generation, and OAuth2 client-credentials/refresh-token/token authenticators. Serialization is managed by a registry keyed by data format and content type, with automatic body sniffing between JSON and XML. The codebase multi-targets netstandard2.0, net471, net48, net8.0, net9.0, and net10.0, and includes extensive unit and WireMock-based integration tests, benchmarks, and versioned Docusaurus documentation. Code quality is strong: clean separation of concerns, extensive use of extension methods for ergonomics, custom source generation for option immutability, and a comprehensive test suite covering OAuth1 official vectors, redirect behavior, cookies, serializer edge cases, and interceptor ordering. Some legacy surface remains (obsolete hooks, polyfills for old TFMs), but the project tracks current .NET releases and is actively maintained. This is a well-crafted library that remains one of the standard HTTP client abstractions in the .NET ecosystem.

RATING: 9.2/10 MAINT: active DRIFT: low
▸ 5 reusable components found
jupyterhub/jupyterhub ★ 8359 2119 APPLICATION

JupyterHub is a production-grade multi-user server for Jupyter notebooks. It provides authentication, spawning of single-user notebook servers, and proxying. Built on Tornado, it uses SQLAlchemy for persistence, supports pluggable Authenticators and Spawners, and includes an OAuth2 provider, RBAC scopes, a REST API, and a web UI. The system is designed for deployment in education, research, and enterprise settings, managing user sessions, isolating notebook environments, and routing traffic through a configurable HTTP proxy. The architecture follows a hub-and-spoke model: the Hub (Tornado process) handles authentication, authorization, and state; the ConfigurableHTTPProxy routes requests to per-user single-user servers; and Spawners manage server lifecycle. Key entry points include the `jupyterhub` CLI command, the `jupyterhub_config.py` configuration file, and the REST API at `/hub/api`. External dependencies include Tornado, SQLAlchemy, Alembic, oauthlib, prometheus_client, and aiohttp. The codebase is well-structured with clear abstractions for authentication, spawning, proxying, and authorization, making it a strong example of a complex web application framework.

RATING: 9.2/10 MAINT: active DRIFT: low
▸ 5 reusable components found
git-ecosystem/git-credential-manager ★ 9367 2957 APPLICATION

Git Credential Manager (GCM) is a production-grade, cross-platform Git credential helper that handles authentication for GitHub, GitLab, Bitbucket, Azure Repos, and generic Git hosts. It implements Git's credential helper protocol (get/store/erase/capability) with support for OAuth2 (authorization code, device code, PKCE, refresh tokens), personal access tokens, basic authentication, Windows Integrated Authentication (NTLM/Kerberos), and Microsoft Entra ID (MSAL) with broker integration. The architecture is plugin-based: host providers register via a priority-ordered registry and are selected by URL matching, HTTP header probing, or explicit configuration. Credential storage is abstracted behind an interface with platform-specific backends (Windows Credential Manager, macOS Keychain, Linux Secret Service, GPG/pass, plaintext, cache). Interactive prompts are delivered via a terminal UI (Spectre.Console) or a cross-platform GUI (Avalonia) with a dispatcher pattern that lazily initializes the UI framework on the main thread. The codebase is heavily tested with a shared test infrastructure providing in-memory fakes for all platform services. Key entry points include Program.cs (process entry), Application.cs (command loop), GitCommandBase (protocol handler), and provider-specific modules. External dependencies include Git, OS credential stores, MSAL for Microsoft authentication, and Avalonia for GUI.

RATING: 9.1/10 MAINT: active DRIFT: medium
▸ 6 reusable components found
googleapis/google-auth-library-java ★ 496 289 APPLICATION

The Google Auth Library for Java provides authentication mechanisms for Google Cloud services. It supports multiple credential types including service account, user credentials, external account credentials (AWS, identity pools), API keys, and workload identity federation. The library implements Application Default Credentials (ADC) for automatic credential discovery, handles token acquisition/refresh/verification, and includes specialized credentials for Compute Engine, App Engine, and impersonation scenarios. It also supports mTLS authentication and client-side Credential Access Boundary (CAB) for least-privilege access. Structured as a multi-module Maven project, it is designed to be used by applications requiring Google Cloud authentication.

RATING: 9.1/10 MAINT: active DRIFT: low
▸ 3 reusable components found
googleworkspace/cli ★ 31284 1862 APPLICATION

gws is a production-grade Rust CLI for driving Google Workspace APIs (Gmail, Drive, Calendar, Sheets, Docs, Chat, Tasks, Classroom, Admin, and more). Its defining architectural bet is dynamic command generation: instead of shipping generated API client crates, it fetches Google's Discovery Service JSON at runtime, builds a clap command tree from the schema, and executes generic HTTP calls against resolved endpoints. A two-phase argument parse extracts the service name first, then re-parses with the dynamically constructed command set, keeping the entire Google API surface reachable without codegen. The repo is a Cargo workspace split into a reusable library crate (google-workspace: discovery models, validation, HTTP client) and the CLI binary crate, and is distributed via crates.io, npm (binary downloader), GitHub Releases, and Nix. Beyond raw API calls, a helper-command system (`+send`, `+upload`, `+agenda`, `+triage`) is implemented through a `Helper` trait that injects subcommands for multi-step workflows — MIME construction for Gmail, streaming multipart uploads for Drive, calendar agenda assembly, and cross-service orchestrations. Authentication supports interactive OAuth2 login, service accounts, pre-obtained tokens, and Application Default Credentials, with credentials encrypted at rest (AES-256-GCM) in an OS keyring or file fallback. A ratatui-based interactive setup wizard bootstraps a GCP project, enables APIs, and configures OAuth consent via gcloud. Output is structured (JSON/table/YAML/CSV/NDJSON) with stable, documented exit codes, making it suitable for both shell scripting and LLM tool calling. The repository also functions as an AI-agent integration layer: it ships 100+ SKILL.md files (per-service references, multi-step recipes, role-based personas) plus TOML registries defining personas and recipes, with a generator that produces skill documentation from CLI metadata. An experimental Model Armor integration sanitizes prompts and responses for prompt-injection attacks. Engineering quality is high throughout: extensive unit tests (several hundred cases, including security-focused edge cases), CI covering 7 build targets with real-credential API smoke tests, cargo-deny dependency auditing, changeset-based automated releases, and a Nix flake for reproducible builds. Notable risks: the entire command surface depends on Google's Discovery Documents staying available and compatible; the Gmail helper module is ~3000 lines and approaching a maintainability ceiling; two divergent OAuth implementations (yup-oauth2 fast path vs proxy-aware reqwest fallback) add maintenance burden; 15+ environment variables increase configuration complexity; and hardcoded API lists in setup tooling must be manually updated as Google adds services. These are real but moderate concerns in an otherwise well-architected, actively maintained codebase.

RATING: 9.0/10 MAINT: active DRIFT: low
▸ 6 reusable components found
golang-jwt/jwt ★ 9239 452 APPLICATION

This is the official Go implementation of JSON Web Tokens (JWT), currently at v5. It provides a comprehensive library for creating, signing, parsing, and validating JWTs. The core package implements all standard JWT claims (RegisteredClaims and MapClaims), multiple signing algorithms (HMAC-SHA, RSA, RSA-PSS, ECDSA, Ed25519), and a flexible parser with functional options for configuration (e.g., allowed algorithms, leeway, audience/issuer/subject validation). The library also includes a `request` subpackage for extracting tokens from HTTP requests via headers or form/query parameters, and a `cmd/jwt` CLI tool for debugging and batch operations. Architecturally, it follows a clean separation of concerns: signing methods implement a common `SigningMethod` interface, claims implement a getter-based `Claims` interface, and validation is handled by a stand-alone `Validator` struct that can be used independently of parsing. The code is well-tested, uses only the Go standard library (no third-party dependencies), and follows modern Go idioms like functional options and error wrapping (Go 1.20+). It is actively maintained with CI, linting, CodeQL, and spell-check workflows.

RATING: 9.0/10 MAINT: active DRIFT: low
▸ 3 reusable components found
authorizerdev/authorizer ★ 1997 211 APPLICATION

Authorizer is a self-hosted, production-grade authentication and authorization server written in Go. It implements OAuth 2.0 / OIDC, SAML IdP/SP, SCIM 2.0, WebAuthn/passkeys, TOTP, email/SMS OTP, and fine-grained authorization via an embedded OpenFGA engine. The architecture is transport-agnostic: a shared service layer (internal/service) is called by GraphQL resolvers, gRPC handlers, and HTTP handlers (Gin). It supports multiple storage backends (SQL, MongoDB, Cassandra, DynamoDB, Couchbase, ArangoDB) via a unified storage.Provider interface, plus Redis and in-memory stores for sessions and caching. The system includes a React admin dashboard, an end-user login SPA, and an MCP (Model Context Protocol) server for AI tool exposure. Security is a primary focus, with extensive regression tests for CVEs, SSRF protection, constant-time comparisons, and audit logging.

RATING: 9.0/10 MAINT: active DRIFT: low
▸ 6 reusable components found
nuxt-community/auth-module ★ 1924 892 APPLICATION

This is a Nuxt.js 2 authentication module that provides zero-boilerplate authentication support. It implements various authentication schemes (local, OAuth2, OpenID Connect, refresh tokens) and integrates with popular providers like Auth0, Google, Facebook, and Laravel-based systems. The module handles token storage, automatic refresh, user management, and provides middleware for route protection. It uses a modular architecture with core auth logic, scheme implementations, provider configurations, and utility functions.

RATING: 9.0/10 MAINT: maintained DRIFT: low
▸ 3 reusable components found
sergiodxa/remix-auth-oauth2 ★ 199 64 APPLICATION

remix-auth-oauth2 is a TypeScript library that provides an OAuth2 strategy for the Remix authentication framework (remix-auth). It implements the OAuth2 Authorization Code flow with PKCE, supporting standard endpoints, refresh tokens, token revocation, and OIDC discovery. The library is designed as a drop-in strategy for Remix apps, handling the redirect to the provider, state validation, token exchange, and invoking a user-supplied verify callback with the obtained tokens and request. It also exports error classes and the CodeChallengeMethod enum for convenience. The architecture is a single Strategy class extending remix-auth's Strategy base, backed by the arctic OAuth2 client library for protocol-level operations. The core logic lives in src/index.ts, with a small helper for redirects and a custom StateStore class that manages multiple concurrent OAuth flows by storing state and code verifiers in cookies. The StateStore is particularly well-crafted: it supports multiple simultaneous authorization attempts (e.g., multiple browser tabs) by merging cookie entries and using unique cookie names per flow, preventing race conditions. The codebase is clean, well-typed, and thoroughly tested with bun:test and MSW, covering redirect generation, state mismatch errors, token exchange, discovery, and concurrency. CI/CD is fully configured with GitHub Actions for build, typecheck, quality, tests, and npm publishing. The library is actively maintained, with recent commits, dependabot updates, and a low technical drift relative to its ecosystem.

RATING: 8.8/10 MAINT: active DRIFT: low
▸ 1 reusable components found
nextauthjs/next-auth ★ 28367 4031 APPLICATION

This is a monorepo for Auth.js (formerly NextAuth.js), a framework-agnostic authentication library for web applications. The core engine (`@auth/core`) handles OAuth/OIDC, email/passwordless, credentials, and WebAuthn/Passkey authentication flows. It provides a unified API for session management (JWT or database-backed), CSRF protection, and cookie handling. The library is designed to be integrated into multiple frameworks via separate packages: `@auth/nextjs`, `@auth/sveltekit`, `@auth/express`, `@auth/qwik`, and `@auth/solid-start`. Each framework package adapts the core `Auth` function to the framework's request/response model, offering server-side handlers, middleware, and client-side hooks. The repository also includes over 80 built-in OAuth/OIDC provider definitions (e.g., Google, GitHub, Discord, Auth0) and 20+ database adapters (e.g., Prisma, Drizzle, MongoDB, PostgreSQL, DynamoDB) that implement a standard `Adapter` interface for user persistence. The project is now part of Better Auth, and the README recommends new projects use Better Auth unless specific feature gaps exist. The monorepo contains development apps, example applications, and a comprehensive documentation site built with Nextra.

RATING: 8.7/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
googleapis/google-api-php-client ★ 9812 3530 APPLICATION

This is the official Google API Client Library for PHP, providing a unified interface to call Google APIs such as Drive, YouTube, Books, and many others. It handles authentication (API keys, OAuth2 web flow, service accounts), HTTP requests via Guzzle, batching, media uploads (simple, multipart, resumable), retries with exponential backoff, caching, and model serialization. The library is in maintenance mode: critical bugs and security issues are addressed, but no new features are added. It is a mature, well-tested library with extensive documentation and examples. The architecture centers around a `Google\Client` object that manages authentication and HTTP, and generated service classes (from `google/apiclient-services`) that map to specific Google APIs. The codebase is well-structured, uses modern PHP (8.0+), and follows PSR standards. Key reusable components include a standalone URI Template parser and a generic retry runner with exponential backoff.

RATING: 8.7/10 MAINT: active DRIFT: low
▸ 2 reusable components found
teamhanko/hanko ★ 9042 1017 APPLICATION

Hanko is a production-grade, self-hostable authentication and identity platform written primarily in Go. The backend exposes public, admin, and management HTTP APIs plus a CLI for migrations, user import/export, JWK/JWT management, and config schema generation. Authentication is implemented as a custom state-machine engine (flowpilot) driving login, registration, password/passkey/MFA/third-party OAuth/SAML flows, backed by JWT sessions, device trust, webhooks, audit logs, and rate limiting. The persistence layer uses gobuffalo/pop with a broad set of per-entity persister interfaces and roughly 65 Fizz migrations covering users, emails, credentials, sessions, tenants, organizations, roles, SAML providers, and webhooks. The frontend is split into a TypeScript SDK (`@teamhanko/hanko-frontend-sdk`) and Preact-based web components (`@teamhanko/hanko-elements`) that render flow states into embeddable `<hanko-auth>` and `<hanko-profile>` elements. The repository also contains a quickstart Go server, framework examples for React, Vue, Angular, Next.js, and Express, Playwright e2e tests, Docker Compose stacks, and Kubernetes manifests. Data flows through Echo routers into flowpilot actions/hooks, which validate inputs, persist state, issue sessions, and trigger webhook events; PostgreSQL, Redis, SMTP, and external OAuth/SAML providers are the primary external dependencies. Overall the codebase is well-structured and heavily tested, with sophisticated security handling around redirect validation, account linking, multi-tenant isolation, and webhook signing. The main friction points are the custom flowpilot framework's learning curve, a very large configuration surface, duplicated example code, and some stale example/e2e toolchains relative to the core Go and Node versions.

RATING: 8.7/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
$ loading more...
$ submit: