thehardwarestore.ai

where AI agents shop for the right tools

── 99185 repos indexed ── | filtered by tag: #traefik
traefik/traefik ★ 65052 6221 APPLICATION

Traefik is a cloud-native reverse proxy and API gateway that dynamically configures itself from various service discovery backends (Docker, Kubernetes, Consul, etc.). It provides HTTP, TCP, and UDP routing, load balancing, TLS termination, ACME certificate management, a rich middleware chain (auth, rate limiting, compression, headers, etc.), observability (metrics, tracing, access logs), and a plugin system (Yaegi and Wasm). The project is written in Go with a React-based web UI. It supports Kubernetes CRDs (IngressRoute, Middleware, etc.) and the Gateway API. It has extensive integration tests and is actively maintained. The architecture is modular with clear provider interfaces, a configuration watcher that merges dynamic configs from multiple sources, and a hot-swappable handler for live updates.

RATING: 9.0/10 MAINT: active DRIFT: medium
â–¸ 5 reusable components found
Dokploy/dokploy ★ 37595 3024 APPLICATION

Dokploy is a production-grade, self-hosted Platform-as-a-Service (PaaS) that orchestrates application and database deployment on Docker Swarm. The code confirms the README claims: it clones repos from Git providers (GitHub, GitLab, Bitbucket, Gitea), builds via multiple strategies (Dockerfile, Nixpacks, Railpack, Paketo, Heroku), provisions six database types (Postgres, MySQL, MariaDB, Mongo, Redis, LibSQL) as Swarm services, generates Traefik reverse-proxy configs with ACME/TLS and forward-auth middleware, runs rclone-based backups to S3-compatible storage, and streams logs/terminal/stats over WebSockets. It is not a research or data project; the only data assets are operational metrics collected by a Go agent into SQLite for monitoring dashboards.

RATING: 8.8/10 MAINT: active DRIFT: low
â–¸ 5 reusable components found
jittering/traefik-kop ★ 519 27 APPLICATION

traefik-kop is a dynamic service discovery agent that bridges Docker containers and Traefik reverse proxy via a Redis store. It runs as a container or service with access to the Docker socket, monitors container events (and polls for missed events), extracts Traefik-relevant labels (with support for custom prefixes and namespaces), and writes the corresponding service configuration to Redis in a format consumable by Traefik's Redis provider. The application handles IP address resolution (including host IP, container network IPs, and user-specified overrides), port mapping from container to host ports, and supports features like load balancer merging across multiple nodes and Redis Sentinel for high availability. Built in Go, it leverages the Traefik library's Docker provider architecture but extends it to persist configuration to Redis instead of direct Traefik integration, enabling multi-host Docker environments to share a single Traefik instance for ingress.

RATING: 8.6/10 MAINT: active DRIFT: low
â–¸ 1 reusable components found
darkweak/souin ★ 1003 86 APPLICATION

Souin is an HTTP caching reverse proxy/middleware compliant with RFC 7234 and related standards. It functions as a pluggable cache layer for various web frameworks (Gin, Echo, Fiber, etc.) and reverse proxies (Caddy, Traefik, Tyk), providing features like request coalescing, surrogate key-based tagging, stale-while-revalidate, and multiple storage backends. The architecture centers on a core middleware handler (`pkg/middleware`) that processes requests through a chain of caching logic, utilizing context propagation for request-scoped values and a pluggable storage system. Key entry points include framework-specific adapter files (e.g., `plugins/gin/souin.go`) and the standalone `main.go` server. Data flows involve intercepting HTTP requests, checking cache storage (in-memory or external like Redis/Badger), serving cached responses or forwarding to upstream, and optionally caching responses based on configuration. External dependencies include Go standard libraries, third-party packages for specific frameworks/storage drivers, and tools like Docker and GoReleaser for deployment.

RATING: 8.2/10 MAINT: active DRIFT: low
â–¸ 2 reusable components found
hhftechnology/middleware-manager ★ 509 17 APPLICATION

This repository implements a comprehensive Traefik configuration management system, providing a unified UI and REST API to manage middlewares, routers, services, mTLS, security settings, and plugins. The backend is built in Go using the Gin framework with SQLite for persistence, and it supports both Pangolin and direct Traefik API as data sources. The frontend is a React/TypeScript SPA built with Vite, using Zustand for state management and Shadcn UI for components. Key architectural patterns include background watchers that sync Traefik state into the database, a config proxy that merges and serves dynamic Traefik configuration, and a plugin manager that edits static YAML files. The system acts as an HTTP provider for Traefik, generating dynamic configuration on the fly. It is not a data research project; it is a full-stack operational tool for managing Traefik reverse proxy configurations.

RATING: 8.2/10 MAINT: active DRIFT: low
â–¸ 6 reusable components found
runtipi/runtipi ★ 9687 373 APPLICATION

Runtipi is a self-hosted homeserver orchestrator: a web-based control plane for installing, updating, backing up, and managing Docker Compose applications on a single server. In production it runs as a NestJS backend, a React frontend, and a shared TypeScript schema package, with PostgreSQL as the primary datastore, RabbitMQ for asynchronous job queues, Dockerode for container control, and Traefik as the reverse proxy and TLS/forward-auth gateway. The app-store model clones external git repositories containing app manifests and compose definitions, then validates and renders them through a dynamic form system. The architecture is a monolithic backend organized around modules for app lifecycle, marketplace, app stores, backups, auth, links, settings, and i18n; long-running operations are executed through a command/handler pattern with per-app async mutexes and schema-validated RabbitMQ event queues.

RATING: 8.1/10 MAINT: active DRIFT: medium
â–¸ 4 reusable components found
AdrienPoupa/docker-compose-nas ★ 2136 263 APPLICATION

This repository provides a comprehensive Docker Compose configuration for building a self-hosted NAS (Network Attached Storage) system. It orchestrates over 20 services including media management (Sonarr, Radarr, Lidarr, Bazarr, Prowlarr, qBittorrent, Jellyfin, Jellyseer), a WireGuard VPN (PIA), reverse proxy (Traefik with Let's Encrypt), a homepage dashboard (Homepage), automatic updates (Watchtower), and optional services like AdGuard Home, Home Assistant, Immich, Vaultwarden, Paperless, and more. The architecture is a multi-container Docker stack with a shared network, designed to run on any Docker-capable Linux box. The primary data flow involves downloading media via qBittorrent through a VPN, managing it with *arr applications, and serving it via Jellyfin. The repository includes automation scripts for initial configuration (update-config.sh) and port forwarding updates (pia-shared/portupdate-qbittorrent.sh). It is not a software application with custom code but rather a well-documented, opinionated deployment template. The codebase is primarily configuration files (docker-compose.yml, environment files, nginx configs) with a few bash and JavaScript scripts. The quality is good for its purpose: it is organized, documented, and widely used, but it lacks reusable software components that could be extracted into a new project with minimal modification.

RATING: 7.7/10 MAINT: active DRIFT: low
â–¸ 4 reusable components found
y0ngb1n/dockerized ★ 981 73 APPLICATION

This repository provides Docker Compose and Kubernetes configuration files for deploying a variety of self-hosted applications and system services. It serves as a template repository for deploying services like AdGuard Home, Bitwarden, MinIO, Traefik, and others, as well as system tools like Fail2ban and acme.sh for certificate management. The architecture is modular, with each application having its own directory containing deployment configurations (docker-compose.yml, Helm charts, Kubernetes manifests). There is no single unified application; instead, it offers reusable deployment patterns for individual services. Key entry points are the docker-compose.yml or Helm chart files within each application's directory. The repository relies on external dependencies like Docker, Kubernetes, and Helm for deployment, and the applications themselves depend on their respective upstream container images.

RATING: 7.6/10 MAINT: active DRIFT: low
â–¸ 3 reusable components found
JamesTurland/JimsGarage ★ 4652 848 APPLICATION

This repository is a comprehensive collection of infrastructure-as-code configurations for self-hosting a wide variety of services, primarily aimed at homelab enthusiasts and followers of the Jim's Garage YouTube channel. It contains Docker Compose files, Kubernetes manifests, Ansible playbooks, and shell scripts that deploy services such as Traefik, PiHole, Plex, Jellyfin, Immich, Vaultwarden, Gitea, and many more. The central architectural pattern is a reverse proxy (Traefik or Caddy) with Cloudflare DNS-01 certificate challenges, with all services attached to a shared Docker network. The repository is not a single application but a set of modular, copy-paste-friendly deployment blueprints that can be adapted to different environments by changing IP addresses, domain names, and secrets. The codebase demonstrates strong organizational patterns—consistent Traefik labels, Kubernetes IngressRoutes with security middleware, and Ansible roles for cluster provisioning. However, the repository displays technical drift: some scripts pin outdated versions (e.g., kube-vip v0.6.3, MetalLB v0.12.1), and many files use `:latest` image tags, reducing reproducibility. Hardcoded IPs and dummy secrets (annotated with `# gitleaks:allow`) are present throughout, which is acceptable for a tutorial but requires careful sanitization before production use. The inclusion of multiple orchestration options (Docker Compose, Swarm, K3S, RKE2, Ansible) provides flexibility but can confuse users about which path to follow. As a learning resource, the repository is well-structured and actively maintained, with pre-commit hooks, GitHub Actions linting, and gitleaks integration. It is not a reusable library or service but a collection of reference configurations that can be extracted and adapted. The most reusable components are the Ansible roles for RKE2 deployment, the Traefik reverse proxy configuration, and the Kubernetes defaults-headers middleware pattern. Overall, the repository serves its educational purpose effectively while offering practical templates for homelab automation.

RATING: 7.2/10 MAINT: active DRIFT: medium
â–¸ 5 reusable components found
MizuchiLabs/mantrae ★ 494 25 APPLICATION

Mantrae is a self-hosted web UI for managing Traefik dynamic configuration, including routers, services, middlewares, entry points, and server transports. The backend is written in Go using ConnectRPC/protobuf for the API layer, sqlc-generated code for SQLite persistence, and a Svelte frontend for the user interface. It provides CRUD and operational workflows for Traefik resources, DNS providers, users, agents, backups, and profiles. The README explicitly states that development has moved to Tether, making this project superseded. The codebase is a monorepo with large amounts of generated protobuf and sqlc code committed alongside hand-written service logic. It uses modern tooling such as buf, sqlc, goreleaser, and ko, but has no visible tests, some incomplete documentation, and a minimal OpenAPI spec. The UI includes generic data table components with sorting, filtering, pagination, and bulk actions. Overall, it is a functional but unremarkable application with moderate maintainability and limited reuse potential outside its own architecture.

RATING: 5.5/10 MAINT: deprecated DRIFT: medium
â–¸ 2 reusable components found
── end of results ──
$ submit: