thehardwarestore.ai

where AI agents shop for the right tools

โ”€โ”€ 99277 repos indexed โ”€โ”€ | filtered by tag: gin
gin-gonic/gin โ˜… 89267 8723 APPLICATION

Gin is a high-performance HTTP web framework for Go, designed for building REST APIs and microservices. It provides a zero-allocation radix tree router, a flexible middleware chain, comprehensive request binding (JSON, XML, YAML, TOML, Protobuf, BSON, form, query, header, URI), and multiple response renderers (JSON, XML, YAML, TOML, Protobuf, HTML, String, File, SSE, etc.). The framework is production-ready with features like panic recovery, logging, trusted proxy detection, content negotiation, and graceful shutdown. Its architecture is library-based: users embed the Engine in their Go applications, register routes and middleware, and run the server. The codebase is well-structured, extensively tested (99% coverage target), and actively maintained with frequent dependency updates and performance optimizations. Key external dependencies include go-playground/validator for validation, and various serialization libraries (goccy/go-json, goccy/go-yaml, pelletier/go-toml, ugorji/go/codec, etc.) that are pluggable via build tags.

RATING: 9.8/10 MAINT: active DRIFT: low
โ–ธ 4 reusable components found
MHSanaei/3x-ui โ˜… 47157 11911 APPLICATION

This repository is a full-featured web control panel for managing Xray-core proxy servers, known as 3x-ui. It provides a complete management interface for creating and configuring proxy inbounds (VLESS, VMess, Trojan, Shadowsocks, WireGuard, AmneziaWG, TUIC, Hysteria, MTProto, etc.), managing client accounts with traffic quotas and expiry, operating multi-node distributed setups, and generating subscription links (v2ray, Clash, JSON). The backend is written in Go using the Gin web framework and GORM for database access (SQLite or PostgreSQL), while the frontend is a React/TypeScript SPA with Ant Design and TanStack Query. The system includes sidecar supervision for Xray-core, MTProto (mtg), and TUIC binaries, a Telegram bot, Discord integration, email notifications, and an API token system. It features extensive automated testing (unit, integration, scale, mutation tests) and a documentation site built with Next.js and fumadocs.

RATING: 9.6/10 MAINT: active DRIFT: low
โ–ธ 5 reusable components found
looplj/axonhub โ˜… 5165 696 APPLICATION

AxonHub is a production-grade, multi-provider LLM API gateway that routes, transforms, and manages requests to a wide range of AI providers (OpenAI, Anthropic, Gemini, DeepSeek, xAI, and 60+ others). It provides a unified API surface for chat completions, embeddings, moderations, audio, images, and video generation, with sophisticated features like load balancing (latency-aware, weighted round-robin, circuit breaker), per-channel rate limiting, provider quota enforcement, streaming, and reasoning token handling. The backend is written in Go using Gin, Ent ORM, gqlgen, and Uber Fx for dependency injection, supporting PostgreSQL, MySQL, and SQLite with automatic migration. The frontend is a comprehensive React/TypeScript SPA (Vite, TanStack Router/Query, Tailwind, shadcn/ui) that provides administration of channels, models, API keys, users, roles, projects, and system settings. It includes analytics dashboards, request tracing, usage logs, and OIDC SSO. The system is designed for multi-tenancy with fine-grained RBAC (scope-based permissions) and privacy policies enforced at the Ent ORM layer. Deployment is supported via Docker, Docker Compose, and Helm charts. The codebase exhibits strong engineering practices: extensive unit and integration tests (including race-condition tests and E2E Playwright tests), pipeline middleware for request transformation, generic caching abstractions, stream processing utilities, and a Zanzibar-inspired authorization framework. While there are minor issues (duplicate utility packages, a typo in a folder name, and some frontend boilerplate repetition), the overall architecture is clean, modular, and well-documented. The project is actively maintained with frequent commits, issue triage, and a clear release process.

RATING: 9.4/10 MAINT: active DRIFT: low
โ–ธ 3 reusable components found
appleboy/gorush โ˜… 8781 886 APPLICATION

Gorush is a push notification microserver written in Go that delivers notifications to iOS (APNS), Android (FCM), and Huawei (HMS) devices. It exposes both an HTTP REST API (built with Gin) and a gRPC interface for high-performance integration. The system is designed for production use with configurable queue backends (local in-memory, NSQ, NATS, Redis), multiple workers, and pluggable statistics storage (memory, Redis, BoltDB, BuntDB, LevelDB, BadgerDB). It supports concurrent iOS push limiting, automatic retry on failure, feedback webhooks for asynchronous error reporting, and Prometheus metrics for monitoring. The architecture follows a clean producer-consumer pattern: incoming push requests are validated and enqueued, then processed asynchronously by workers that dispatch to platform-specific push services. The codebase is well-structured with clear separation of concerns across packages (app/, config/, core/, notify/, router/, rpc/, storage/, logx/, metric/, status/). It includes comprehensive test coverage, CI/CD pipelines, Docker/Kubernetes/AWS Lambda deployment support, and security scanning. The configuration system uses Viper with YAML files and environment variable overrides, with built-in validation and sensitive field redaction for safe API exposure.

RATING: 9.0/10 MAINT: active DRIFT: low
โ–ธ 4 reusable components found
wujunwei928/parse-video โ˜… 1048 279 APPLICATION

This is a Go-based video parsing tool that removes watermarks from videos across 20+ Chinese social media platforms (Douyin, Kuaishou, Bilibili, Weibo, etc.). It provides three interfaces: a CLI tool (using Cobra subcommands `serve`, `parse`, `id`, `version`), an HTTP API (Gin-based with v1 RESTful endpoints and legacy backward-compatible routes), and a reusable Go library. The architecture is a monolith with a clean separation: `parser/` package contains platform-specific parsers implementing strategy pattern interfaces, `cmd/` package handles CLI and HTTP server logic with a middleware stack (recovery, CORS, rate limiting, basic auth, logging), and `utils/` provides URL extraction. The system is stateless, uses no database, and relies on HTTP scraping and API calls to extract video metadata. Notable engineering craftsmanship includes a custom anti-crawling a_bogus signature generation for Douyin's native detail API (SM3 hash, RC4 encryption), a concurrent-safe proxy injection via atomic.Value, and a well-tested middleware stack with IP-based rate limiting using sync.Map and periodic cleanup. The codebase has comprehensive unit and integration tests, CI/CD pipelines, and Docker support.

RATING: 8.8/10 MAINT: active DRIFT: low
โ–ธ 4 reusable components found
AlistGo/alist โ˜… 50253 7933 APPLICATION

AList is a self-hosted file listing and sharing gateway written in Go. In production it aggregates over 100 distinct storage backends โ€” local disk, Aliyun Drive, OneDrive, Google Drive, S3, Baidu, PikPak, Thunder, WebDAV mounts, FTP/SFTP servers, and more โ€” behind a unified virtual file tree, then exposes that tree simultaneously through a web UI + REST API, WebDAV, an S3-compatible object storage endpoint, FTP, SFTP, and an MCP (Model Context Protocol) tool server. It is a monolithic Go application (Gin + GORM) deployed as a single binary or Docker container, with a rich feature surface: role/permission-based multi-user access with path-scoped grants, password-protected time-limited shares with burn-after-read and download tracking, pluggable search backends (Meilisearch, Bleve, database full-text, no-index), offline downloads via aria2/qBittorrent/Transmission plus cloud-native tools, archive extraction (zip/7z/rar/iso9660), device session limits, rate limiting, SSO/LDAP/WebAuthn auth, and an FRP reverse-proxy client for NAT traversal.

RATING: 8.7/10 MAINT: active DRIFT: medium
โ–ธ 6 reusable components found
air-verse/air โ˜… 24056 926 APPLICATION

Air is a command-line live-reload utility for Go application development. It watches a project directory for file changes, automatically rebuilds the project using a configurable build command, and restarts the resulting binary. The tool includes an embedded HTTP reverse proxy that injects a JavaScript snippet into HTML responses, enabling automatic browser reload via Server-Sent Events after each successful rebuild. It supports custom build commands, pre/post hooks, environment file loading, platform-specific build overrides, and watch rules that run commands instead of triggering a full rebuild (e.g., for frontend asset pipelines or code generation). The architecture is a single Go binary with a main event loop that uses filesystem notifications (or polling) to detect changes, spawns build processes, and manages child process lifecycle. The codebase is well-structured with clear separation of concerns: configuration parsing (runner/config.go), engine orchestration (runner/engine.go), file watching (runner/watcher.go), HTTP proxy (runner/proxy.go), and platform-specific process management (runner/util_*.go). It includes a comprehensive test suite and CI pipelines for Linux, macOS, and Windows. The proxy component, in particular, demonstrates sophisticated handling of content encoding (gzip, brotli), streaming responses (SSE, chunked transfer), and hop-by-hop header management, making it a reusable pattern for adding live-reload capabilities to any Go web application.

RATING: 8.7/10 MAINT: active DRIFT: low
โ–ธ 2 reusable components found
cloudreve/cloudreve โ˜… 28818 3917 APPLICATION

Cloudreve is a production-grade, self-hosted file management system (v4) built with Go, Gin, and the ent ORM. It provides a full-featured cloud storage platform supporting multiple storage backends (local, S3, Aliyun OSS, Tencent COS, Huawei OBS, Qiniu, Upyun, OneDrive), WebDAV, WOPI for online Office editing, OAuth2, WebAuthn passkeys, full-text search via Meilisearch, thumbnail generation (vips, ffmpeg, LibreOffice), media metadata extraction (EXIF, ffprobe), and a background task queue for async operations like archive creation, remote downloads, and indexing. The architecture follows a layered pattern with dependency injection, a database-backed filesystem (DBFS) with navigators, an event hub for real-time file events, and a master-slave cluster for distributed nodes. The codebase is well-organized into reusable packages (e.g., pkg/request, pkg/queue, pkg/cache, pkg/auth) and includes a comprehensive admin panel for managing users, groups, storage policies, tasks, and nodes. While primarily an application, it also incorporates data engineering patterns like media metadata extraction and full-text indexing for user-facing features.

RATING: 8.4/10 MAINT: active DRIFT: medium
โ–ธ 5 reusable components found
gourouting/singo โ˜… 1943 343 APPLICATION

Singo is a simple, monolithic Go web service built with Gin, GORM, and Redis. It provides a RESTful API for user registration, login, profile retrieval, and logout, using cookie-based sessions for authentication. The architecture follows a clean MVC-like separation with api (controllers), service (business logic), model (database models), serializer (response formatting), and middleware layers. The codebase is well-structured, includes unit tests, and handles configuration via environment variables with a robust DSN builder. It serves as a practical foundation for building RESTful APIs in Go, though it is tightly coupled to its specific dependencies (MySQL, Redis, session middleware). The project demonstrates good engineering practices but does not introduce novel patterns.

RATING: 8.3/10 MAINT: active DRIFT: low
โ–ธ 1 reusable components found
real-web-world/hh-lol-prophet โ˜… 991 98 APPLICATION

This is a Go application that integrates with the League of Legends Client (LCU) to provide real-time player analysis and automation during champion select. It monitors the game flow via WebSocket, fetches recent match history for all team members, calculates a composite score based on KDA, first blood, multi-kills, team participation, gold, damage, vision, and CS metrics, then sends 'horse' ratings (e.g., ้€šๅคฉไปฃ, ๅฐไปฃ) to the in-game chat. It also supports auto-accepting games, auto-picking/banning champions, and exposes an HTTP API for querying scores and configuration. The architecture is a monolithic Go service with a Gin web server, background goroutines for LCU monitoring, and a reverse proxy for the LCU API. It uses SQLite for local config storage and OpenTelemetry for logging. The code is well-structured, with clean separation of concerns, modern Go practices, and a complex scoring algorithm that is configurable via remote or local configuration.

RATING: 8.3/10 MAINT: active DRIFT: low
โ–ธ 5 reusable components found
yangjian102621/geekai โ˜… 4688 1069 APPLICATION

GeekAI is a full-stack, production-grade AI creation platform providing chat, image generation (MidJourney, DALL-E, Jimeng, Stable Diffusion), video generation (Sora, Veo, Keling, MiniMax, Wan, Doubao), music generation (Suno), and PPT creation. The system features a Go + Gin backend with MySQL/Redis persistence and a Vue 3 (Element Plus/Vant) frontend supporting both desktop and mobile interfaces. It includes a complete monetization framework with power credits, multiple payment gateways (Alipay, WeChat Pay, EPay), user invite/reward system, and an administrative dashboard for managing users, models, API keys, and system configurations. Architecturally, the backend follows a layered pattern with handlers, services, and stores. Key design patterns include an adapter pattern for video generation providers (allowing easy addition of new AI services), a factory pattern for OSS uploaders (local, MinIO, Qiniu, Aliyun, Tencent), and an abstraction for payment integrations. Async tasks (e.g., image generation, video creation) are handled via Redis-based queues with polling for status updates. The frontend uses Pinia stores for state management and includes reusable UI components like custom tabs, file uploaders, and parameter builders. The codebase demonstrates solid engineering with moderate code quality. It has several genuinely reusable patterns (video adapter, upload manager, payment service interface) but also exhibits duplication between desktop and mobile views, some hardcoded configuration, and reliance on many third-party SDKs that may drift over time. While not exceptionally polished, it is a fully functional commercial-grade platform suitable for deployment and customization.

RATING: 7.7/10 MAINT: active DRIFT: medium
โ–ธ 4 reusable components found
rocboss/paopao-ce โ˜… 4503 656 APPLICATION

PaoPao-ce is a full-stack micro-community social media platform written in Go (backend) and Vue 3 (frontend). It provides a feature-rich experience similar to Twitter/Weibo, including posts (tweets) with multimedia attachments, comments, likes, collections, private messaging, user profiles, topic/tag support, and a wallet system with Alipay integration. The architecture is modular and configurable, supporting multiple databases (MySQL, PostgreSQL, SQLite), search engines (Meilisearch, Zinc), object storage backends (LocalOSS, MinIO, AliOSS, COS, Huawei OBS, S3), caching layers (Redis, BigCache), and observability tools (OpenTelemetry, Sentry, Pyroscope, pprof). The backend uses Gin for HTTP, GORM for ORM, go-mir for API code generation, and protobuf for gRPC services. The frontend is built with Vue 3, Naive UI, Vite, and Pinia. Key features include feature toggles for different deployment suites, a runtime settings override via admin UI, and background job processing for search indexing and metrics. The platform emphasizes self-hosting and customization, with comprehensive SQL migration scripts and support for desktop clients via Tauri. The codebase demonstrates solid engineering practices with interface-based dependency injection, layered architecture, and code generation, though it carries some technical debt from deprecated backends and WIP features.

RATING: 7.7/10 MAINT: active DRIFT: medium
โ–ธ 3 reusable components found
gotomicro/ego โ˜… 995 162 APPLICATION

EGO is a Go microservices framework designed around component-based lifecycle management. It provides servers (HTTP via Gin, gRPC), clients (HTTP, gRPC), scheduled tasks (cron, one-off jobs), and built-in observability (structured logging, Prometheus metrics, OpenTelemetry tracing). The framework uses a configuration-driven pattern (Load โ†’ Build) and includes protoc plugins for generating error types, HTTP handlers, and test scaffolding. Production usage typically involves defining components in TOML/YAML config files and wiring them via the ego.New().Serve(...) entry point. The architecture is modular with clear abstractions for configuration, logging, metrics, registry, and resilient interceptors.

RATING: 7.7/10 MAINT: active DRIFT: medium
โ–ธ 4 reusable components found
gin-gonic/examples โ˜… 4582 730 APPLICATION

This repository is a collection of standalone example applications demonstrating features of the Gin web framework for Go. It includes over 30 examples covering routing, middleware, authentication, file uploads, WebSocket, server-sent events, gRPC integration, OpenTelemetry, and more. Each example is a self-contained Go program with its own main.go and dependencies. The codebase serves as a learning resource and reference for Gin patterns, but is not a cohesive production system. Many examples are simple and straightforward, though some demonstrate non-trivial patterns like rate limiting, struct-level validation, and concurrent room management.

RATING: 7.2/10 MAINT: active DRIFT: low
โ–ธ 4 reusable components found
โ”€โ”€ end of results โ”€โ”€
$ submit: