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.
This repository is Sentry's self-hosted packaging and operations layer, not the Sentry application itself. It bundles upstream Sentry, Relay, Snuba, Symbolicator, Taskbroker, Vroom, uptime-checker, and launchpad images into a large Docker Compose deployment, and provides idempotent install/upgrade scripts, generated config templates, healthchecks, backup/restore tooling, and optional community patches. The primary entry points are install.sh, which sources a sequence of modular install/ steps, plus operator scripts under scripts/ (reset.sh, backup.sh, restore.sh), sentry-admin.sh for Django admin commands, and a reusable GitHub Action (action.yaml) that downstream Sentry repos use to run self-hosted end-to-end tests against their own images. The runtime architecture is a compose stack: nginx terminates HTTP and routes ingestion to Relay, which validates and buffers events before writing to Kafka; Snuba consumer containers move data from Kafka into ClickHouse; Sentry web and consumer containers read from Kafka/Postgres/Redis and the SeaweedFS S3-compatible object store; Symbolicator handles native symbolication; Taskbroker routes async tasks. The compose file supports an errors-only profile that dramatically reduces the service count and a feature-complete profile that enables transactions, metrics, replays, profiling, uptime, logs, and mobile builds. The codebase is notably well-tested for an infrastructure repo, with bash unit tests under _unit-test/ and pytest integration tests under _integration-test/ that install the full stack and verify event ingestion end to end. Maintenance is active and dependency drift is low: images are bumped regularly via Dependabot, shell scripts are linted with ShellCheck and formatted with shfmt, there is a pre-commit pipeline, and the repo tracks recent upstream replacements such as Valkey for Redis, pgbouncer, taskbroker, and ClickHouse upgrades. The main limitation for reuse is that most of the repository is configuration and deployment glue tied to this specific stack; the few genuinely self-contained, extractable components are small utilities around healthchecks, cryptography/migration, and cron containers.
Cog is an open-source CLI and runtime for packaging machine learning models into production-ready Docker containers. It automatically generates HTTP inference servers with OpenAPI schema, handles GPU/CUDA/cuDNN compatibility, and provides a full weight management pipeline for large model artifacts. The project consists of a Go CLI (build, push, serve, predict, doctor, weights management), a Rust/PyO3 prediction server (coglet) with slot-based concurrency, a Python SDK for defining model interfaces (BaseRunner, Input, streaming), and a TypeScript playground UI. Key workflows include building OCI images from cog.yaml, pushing to registries, serving models via HTTP with SSE streaming, and managing model weights via content-addressed storage and lockfiles. The architecture is multi-language but cleanly separated, with well-defined protocols between components.
This repository is a CLI tool (`api-platform`) that scaffolds new API Platform projects. It generates Symfony or Laravel project skeletons with optional Docker infrastructure, Next.js PWA, React-admin SPA, and AI agent instruction files. The tool configures API formats (JSON-LD, JSON:API, HAL) and documentation viewers (Swagger UI, ReDoc, Scalar). It fetches Docker files from a pinned commit of `dunglas/symfony-docker` and patches compose.yaml for CORS headers. The codebase is well-structured with clean abstractions, idempotent patching patterns, and comprehensive test coverage. It demonstrates professional PHP engineering using Symfony Console components and modern PHP features.
TeslaMate is a self-hosted data logger for Tesla vehicles that collects telemetry via the Tesla API (both polling and streaming), stores data in PostgreSQL, and provides visualization through a Phoenix LiveView web interface and Grafana dashboards. It integrates with home automation systems via MQTT and supports importing historical vehicle data from CSV files (TeslaFi format). The application uses a supervision tree to manage background processes for data collection, MQTT publishing, import tasks, and update checking. Key features include geofencing for location-based cost tracking, encrypted storage for API tokens using Cloak, internationalization via Gettext, and custom Ecto expressions for geographic calculations. The architecture is monolithic with clear separation of concerns through Phoenix contexts (Log, Vehicles, Settings, Locations).
Emissary-ingress (formerly Ambassador) is a Kubernetes-native API gateway and ingress controller built on Envoy Proxy. It sits at the edge of a Kubernetes cluster, managing ingress traffic with self-service configuration via Custom Resource Definitions (CRDs) like Mapping, Host, Module, AuthService, RateLimitService, and TLSContext. The system is architected as a dual-language control plane: a Go-based main entrypoint (`cmd/entrypoint/`) handles Kubernetes resource watching, snapshot assembly, secret reconciliation, and Envoy lifecycle management, while a Python-based configuration engine (`python/ambassador/`) compiles the desired state into an Intermediate Representation (IR) and generates Envoy xDS configuration (v3). A separate Go API extension server (`cmd/apiext/`) provides conversion webhooks and certificate management for CRD versions (v1, v2, v3alpha1). The compiled Envoy configuration is served via gRPC and pushed to Envoy through the ambex package using go-control-plane. Key data flows: Kubernetes resources (CRDs, Ingresses, Services) are watched by Go watchers and accumulated into snapshots via the `pkg/kates/accumulator`. Snapshots are passed to the Python diagd process, which builds an IR (Intermediate Representation) and generates Envoy v3 configuration for listeners, clusters, routes, filters (auth, rate limiting, gzip, CORS, tracing), and TLS settings. The resulting config is written as JSON files, read by the ambex ADS server, and pushed to Envoy. The system supports dynamic updates without restart, canary deployments, circuit breaking, health checks, Istio and Consul integration, and extensive observability (Prometheus, StatsD, Datadog). The codebase demonstrates strong engineering practices with a comprehensive test suite including Go unit tests, Python unit tests, Kubernetes integration tests (KAT framework), and e2e tests using chainsaw and k3d. It has a mature build system with multi-architecture Docker images, Helm charts, and automated release pipelines. While the dual-language architecture introduces some complexity and duplication (e.g., service name normalization in both Python and Go), the project is actively maintained with regular releases and a large community (4.5k stars, 700+ forks).
Zarf is an air-gap native package manager for Kubernetes. It provides a CLI tool to build, sign, publish, and deploy immutable software bundles (packages) into disconnected Kubernetes clusters. The architecture consists of a Go CLI that orchestrates package lifecycle (create, deploy, remove, publish, inspect), a mutating admission webhook agent that rewrites container image references and Git URLs to point to internal Zarf services, and a set of embedded tools (Helm, K9s, Syft, Cosign, etc.). Key capabilities include OCI-based package distribution, Helm chart and manifest deployment, Git repository mirroring, SBOM generation, and Cosign-based signing/verification with both key and keyless modes. The codebase is well-structured with extensive unit and e2e tests, a clean separation between API versions (v1alpha1/v1beta1) with bidirectional conversion, and several reusable subsystems for value merging, archive extraction, template processing, and Kubernetes resource waiting. It is actively maintained with frequent releases and a large community (2000+ stars).
Kapitan is a configuration-as-code CLI tool that renders infrastructure manifests (Kubernetes, Terraform, Docker, etc.) from a hierarchical YAML inventory and pluggable template engines (Jsonnet, Jinja2, Kadet, Helm, Kustomize, CUE). It manages secrets via references (GPG, cloud KMS, Vault, base64), fetches remote dependencies (Git, HTTP, OCI, Helm charts), and supports multiple inventory backends (Reclass, OmegaConf). The compilation pipeline is inventory-driven: targets define classes and parameters, which are deep-merged and interpolated, then passed to input-type compilers that produce deterministic output files. The architecture is modular—separate packages for inputs, inventory backends, secrets/references, and dependency management—all orchestrated by the `kapitan compile` CLI command. It is not a data research project; it is a production-grade infrastructure tool with a large test suite, CI/CD, and documented extension points.
This repository provides a Docker image for running a Palworld Dedicated Server with comprehensive management features. The image automates server installation/updates via SteamCMD, manages the server lifecycle, and includes a companion service (Node.js) that provides a web operation panel and Discord live status card. Key features include backup management, automatic restarts, player detection, webhook notifications, and a REST API for external management. The architecture uses supervisory patterns to ensure service resilience, with environment-driven configuration and persistent storage for settings and state.
Plex Rewind is a Next.js web application that provides a personalized year-in-review (Rewind), a real-time activity monitor, and a configurable dashboard for Plex media servers. It ingests data from Tautulli (play history, library stats), Overseerr (content requests), and TMDB (posters, ratings), and authenticates users via Plex OAuth through NextAuth. The architecture is a monolith with server-side rendering, API routes, and a middleware layer that enforces setup requirements and access control. Settings are persisted to a local JSON file. The application supports PWA installation, multi-language i18n (English, Estonian, French, German), and is fully containerized with Docker. The codebase demonstrates strong engineering practices: strict TypeScript, server actions for form handling, React Server Components, motion animations, and a well-organized component hierarchy. It is actively maintained with semantic release automation and CI/CD pipelines.
Coolify is a self-hosted Platform-as-a-Service (PaaS) that enables users to deploy and manage applications, databases, and services on their own infrastructure. It serves as an open-source alternative to Heroku, Netlify, or Vercel, supporting Docker-based deployments with Git integration (GitHub, GitLab, Gitea, Bitbucket), multiple build packs (Railpack, Nixpacks), and one-click service templates. The system manages servers, reverse proxies (Traefik/Caddy), SSL certificates, scheduled backups, and multi-channel notifications (email, Discord, Slack, Telegram, Pushover, webhook). The architecture is a Laravel monolith with a Livewire + Alpine.js frontend for the v4 UI and a React + TypeScript canvas-based interface for the v5 UI. Background jobs are handled by Laravel Horizon with dedicated queues for deployments, cron tasks, and reconciliation. Real-time updates use Soketi (a Pusher-compatible WebSocket server) and Laravel Echo. The system integrates with cloud providers (Hetzner, Vultr, DigitalOcean) for server provisioning and Stripe for subscription billing. A Model Context Protocol (MCP) server exposes resources and tools for AI assistant integration. Key data flows include: webhook ingestion from Git providers triggering deployment jobs, SSH-based remote command execution on managed servers, Docker Compose parsing and environment variable injection, database backup scheduling with S3 storage, and proxy configuration generation. The v5 architecture introduces a control-plane/agent split with Flux (HTTP socket) and coold (gRPC) components for improved scalability and isolation. External dependencies include Docker, PostgreSQL, Redis, Soketi, Stripe API, cloud provider APIs, and various notification service endpoints. The codebase is actively developed with frequent schema migrations and a dual v4/v5 code path, indicating ongoing architectural evolution.
Lazydocker is a mature, well-structured terminal UI application for managing Docker and Docker Compose environments. Built in Go using a forked version of the gocui library, it provides a unified interface for viewing containers, services, images, volumes, and networks with real-time monitoring, log streaming, and interactive command execution. The architecture follows a clean separation between the command layer (Docker API interactions, OS command execution), presentation layer (display string formatting), and GUI layer (gocui-based terminal interface with panels and keybindings). The codebase demonstrates solid engineering practices with a generic, thread-safe FilteredList data structure that efficiently handles filtering and sorting without modifying underlying data. The task management system supports cancellable, concurrent operations with proper context propagation. The SSH tunneling implementation for remote Docker hosts is particularly well-crafted, using dependency injection for testability. The project maintains active development with recent commits, comprehensive CI/CD across multiple platforms, and support for 9 languages. Key architectural patterns include a panel-based UI composition where each side panel (containers, services, images, etc.) shares common infrastructure through generic types, a context-aware main panel that re-renders based on selected items, and a flexible template system for The configuration system supports extensive customization while maintaining sensible defaults. The codebase uses vendored dependencies for reproducible builds and includes proper error handling with user-friendly error messages.
Mastodon is a full-stack, federated social network server implementing the ActivityPub protocol. It provides a production-grade Rails API backend with a React/Redux frontend, real-time streaming via Node.js, and extensive background job processing with Sidekiq. The system supports user timelines, media attachments, content moderation, admin dashboards, OAuth authentication, and federation with other ActivityPub-compatible services. The codebase is large and actively maintained, with a clear separation of concerns across controllers, services, serializers, workers, and frontend components. It includes advanced features such as trending content, annual user reports, FASP data sharing, and a comprehensive admin interface. While the architecture is well-structured, there are signs of technical drift including mixed frontend patterns (legacy JSX vs modern TypeScript/Redux Toolkit), placeholder Ruby/Node version numbers, and some deprecated API endpoints.
AstrBot is a production-grade, multi-platform LLM chatbot framework and development platform. It connects to 10+ instant messaging platforms (QQ, Telegram, Discord, Slack, WeChat, Lark, etc.) via adapter pattern, integrates with 20+ LLM providers (OpenAI, Anthropic, Gemini, DashScope, etc.), and provides a plugin system (Stars) with command/regex/filter decorators. The architecture is a modular monolith: a FastAPI backend serves a Vue 3 dashboard for management, while a pipeline of stages processes incoming messages through waking checks, rate limiting, content safety, LLM interaction, and response delivery. It includes a knowledge base with RAG (FAISS vector store, chunking, hybrid retrieval), agent runners (Dify, Coze, DeerFlow), sandboxed code execution (computer use), TTS/STT, cron jobs, and a CLI. The codebase is well-structured with extensive test coverage, but its broad scope introduces some duplication and deprecated modules.
ServerStatus is a lightweight server monitoring and cloud dashboard system. It consists of a Go-based server that accepts TCP connections from Python clients, collects system metrics (CPU, memory, disk, network, processes, ping latency), and exposes a real-time JSON stats endpoint and a full REST management API. The server also supports service monitoring (HTTP/TCP probes), SSL certificate expiry checks, and a configurable watchdog rule engine that evaluates expressions against live metrics and triggers HTTP callbacks. The web UI is a single-page application with filtering, sorting, detail drawers, and an admin panel for CRUD operations on configuration. The architecture is a classic client-server model: multiple Python agents (client-linux.py or client-psutil.py) connect to a single Go server over a custom TCP protocol. The server authenticates agents, receives periodic metric updates, and serves a web dashboard and API. The Go server is a monolith with separate modules for HTTP handling, TCP agent handling, configuration management, SSL checking, and watchdog evaluation. It uses the Gin web framework for HTTP and the expr-lang library for rule evaluation. Key entry points are the TCP agent listener (port 35601), the HTTP server (port 80/8080), and the CLI flags for configuration. External dependencies include Go modules (gin, expr-lang), Python libraries (psutil for the psutil client), and Docker for containerized deployment. The system is designed for easy deployment via Docker Compose or shell scripts, with environment variable overrides for all client and server settings.
pREST is a production-grade Go HTTP server that automatically exposes PostgreSQL databases as RESTful and MCP (Model Context Protocol) APIs without requiring hand-written backend code. It provides instant CRUD endpoints for any table, custom SQL template execution with parameterized queries, and a built-in Studio web UI for exploring and managing APIs. The system is architected around a hexagonal pattern with a clean adapter interface supporting multiple databases (PostgreSQL, TimescaleDB), dependency injection for controllers, and a layered middleware stack for authentication (JWT), authorization (table/field-level ACL), caching, and CORS. Security is a primary concern: SQL injection is mitigated through strict identifier validation, template parameter screening, and bound parameter binding, while credential leakage in logs is prevented by a dedicated redaction package. The codebase is well-tested with both unit tests (using sqlmock) and integration tests (against real PostgreSQL in Docker), and includes OpenTelemetry integration for observability. It is not a data research or analytics project; it is a pure application for building low-code database APIs.
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.
This repository provides a self-hosted platform for deploying and managing web applications on a single server. It integrates Cloudflare for public access via tunnels, Tailscale for secure private access, Docker and Kamal for containerized deployment, and GitHub for webhook-triggered updates. The system consists of a daemon that handles incoming webhooks and manages deployments, and a CLI for initial setup and ongoing administration. Applications are deployed with zero-downtime using Kamal, and the platform automates the configuration of DNS, TLS, and service discovery. The architecture centers around a single Go binary that operates in two modes: as a background service (singleserverd) to process GitHub webhooks and orchestrate deployments, and as a command-line interface (singleserver) for users to configure the platform, add applications, and manage resources. State is stored in files under /etc/singleserver (configuration, credentials) and /srv (source code, storage, backups). The platform emphasizes simplicity and automation, aiming to reduce the operational overhead of running multiple applications on a single VPS. Key features include an interactive setup wizard for connecting provider accounts, automatic DNS and TLS configuration via Cloudflare, secure access through Tailscale Funnel, and a built-in diagnostics tool (doctor) to verify system health. The design prioritizes reliability through atomic file updates, context-aware command execution, and comprehensive error handling. The project includes extensive unit tests and end-to-end validation scenarios that exercise real integrations with the supported services.
Plane is an open-source, self-hosted project management platform that provides issue tracking, sprint planning (cycles), modules, pages (wiki), views, analytics, and real-time collaborative editing. The repository is a monorepo containing a Django REST API backend with Celery workers, multiple React frontends (main web app, public space app, admin panel), and a Hocuspocus-based live collaboration server. The architecture follows a service-oriented pattern with shared packages for UI components, editor extensions, types, utilities, and state management via MobX. The codebase demonstrates strong engineering practices with a rich filter system, extensible permission model, and a clean exporter pattern, though it shows signs of ongoing migration from Next.js to React Router and some code duplication across apps.
PhotoPrism is a self-hosted photo management server that indexes, organizes, and serves personal photo and video collections. In production, it extracts EXIF/XMP/IPTC metadata, generates thumbnails and previews, transcodes videos, performs AI-powered object/face recognition and NSFW detection, and provides a web UI for browsing, searching, sharing, and editing media. It also supports WebDAV access, OAuth2/OIDC authentication, and multi-instance clustering. The architecture is a monolithic Go application with a REST API (Gin framework) and a Vue.js frontend. It uses a relational database (MariaDB/MySQL or SQLite) via GORM. Background workers handle indexing, face recognition, place detection, and cleanup. It integrates with external tools: FFmpeg for video transcoding, libvips for image processing, TensorFlow/ONNX for AI models, and exiftool for metadata extraction. The frontend communicates via REST and WebSocket. Key entry points include the CLI (cmd/photoprism/photoprism.go) with subcommands for import, index, search, and user management, and the API layer (internal/api) exposing endpoints for photos, albums, labels, faces, places, and vision. The indexing pipeline scans configured directories, extracts metadata, generates thumbnails, runs AI models, and stores results in the database. The system also supports background sync with remote WebDAV services and backup/restore. External dependencies include FFmpeg, exiftool, libvips, TensorFlow, ONNX Runtime, Darktable, RawTherapee, yt-dlp, and various Go libraries. It can optionally integrate with OpenAI/Ollama for vision captioning. The codebase is large and mature, with extensive utility packages and a well-organized module structure.