This repository is a modern, lightweight full-stack application template built with Turborepo. It consists of two main apps: a React single-page application (Vite + TanStack Router/Query/Form) for the frontend, and a Hono (Node.js) server providing an oRPC-based API with OpenAPI (Scalar) documentation. Authentication is handled by better-auth (email/password) with PostgreSQL via Drizzle ORM. The system supports CRUD operations for posts, includes dark/light theme toggling, and is fully containerized with Docker. The architecture follows a modular monorepo structure with shared packages for API contracts (oRPC), authentication, database schema and client, UI components (shadcn/ui), and reusable tooling configurations (ESLint, Prettier, Tailwind CSS, TypeScript). The codebase demonstrates strong engineering practices: environment variable validation with valibot, type-safe API contracts with oRPC, session-based auth with CORS, and a robust monorepo setup with Turborepo caching and dependency management.
ToolJet is a comprehensive low-code/no-code application development platform designed for building internal tools, workflows, and AI agents. The system features a visual drag-and-drop editor (AppBuilder) that allows users to construct UIs using a library of widgets, connect to diverse data sources via a plugin architecture, and manage application logic through a backend NestJS service. It supports multi-tenancy, version control (Git), and enterprise-grade security features like SSO and RBAC. The architecture is a monorepo with a React-based frontend and a NestJS-based backend, utilizing PostgreSQL for persistence and Redis for caching.
Portainer Community Edition is a full-stack container management platform providing a unified web UI and REST API for Docker, Docker Swarm, Podman, Kubernetes, Azure Container Instances, and edge computing environments. The backend is written in Go, using BoltDB for storage, gorilla/mux for routing, and includes proxy layers for Docker/Kubernetes/Azure APIs, Helm chart management, GitOps workflows, LDAP/OAuth authentication, RBAC, and backup/restore functionality. The frontend is a hybrid of legacy AngularJS (1.8) and modern React with TypeScript, using React Query, Zustand, Formik, Yup, and a custom UI component library with Storybook. Key entry points are the Go main command (api/cmd/portainer/main.go) and the webpack-compiled React/AngularJS app (app/app.js). The system manages endpoints, stacks, services, containers, volumes, networks, images, registries, edge devices, user teams, and access controls through a layered architecture of HTTP handlers, data services, and middleware. External dependencies include Docker SDK, Kubernetes client libraries, Helm SDK, and various third-party registries.
Automatic Ripping Machine (ARM) is a production-grade application that automates the ripping of optical discs (Blu-ray, DVD, CD) using MakeMKV, HandBrake, abcde, and FFmpeg. It is triggered by udev rules on disc insertion, identifies the disc type and metadata via OMDb/TMDB/MusicBrainz, rips the content, optionally transcodes, and moves files to a configured output directory. The system runs as a Flask web application with a SQLite database, providing a web UI for job management, settings, logs, and notifications via Apprise. It supports multiple drives, parallel ripping, and hardware transcoding (Intel QSV, AMD VCE, NVIDIA NVENC). The architecture is a monolith with a Flask backend and a separate ripper process invoked by udev. The codebase is well-structured with Flask blueprints, SQLAlchemy models, Alembic migrations, and a JSON API for AJAX interactions. Key modules include the ripper orchestrator (arm/ripper/main.py), disc identifier (arm/ripper/identify.py), MakeMKV/HandBrake wrappers, and a comprehensive settings UI. The project is Docker-first but also provides a Debian installer and systemd service. Strengths include a mature feature set, active maintenance, and a large community. Weaknesses include hardcoded paths, a hardcoded Flask secret key, permissive CORS, some shell=True usage, and duplicate utility functions across modules. Test coverage is sparse but present for core ripper components. The codebase is functional and well-documented but has some technical debt that would benefit from refactoring.
Wolf is a production-grade game streaming server that implements the Moonlight (NVIDIA GameStream) protocol. It allows multiple remote clients to play games or run applications on a single Linux host, sharing a GPU and input devices. The system runs games in isolated Docker containers, captures their output via a custom headless Wayland compositor, encodes video/audio using hardware-accelerated GStreamer pipelines (NVIDIA NVENC, Intel QSV, AMD VA-API), and streams the result over RTP with forward error correction (Reed-Solomon) and AES encryption. Input from Moonlight clients is injected into containers via virtual uinput devices, and audio is routed through PulseAudio virtual sinks. The server provides a REST API for Moonlight client pairing/control, a Unix socket management API for a companion web UI, and supports multi-session lobbies. The architecture is monolithic but modular, using an event bus for decoupling, immutable state with `immer`, and a plugin system for GStreamer video/audio payloaders. The codebase demonstrates strong C++20 practices, portability across Linux distributions, and deep integration with kernel and GPU subsystems. It is not a data research project; it is a low-latency streaming application.
This repository is a curated awesome-list of open-source operations and DevOps tools, organized into 82 categories with 653 entries. It is not a software application; it is a structured dataset of YAML metadata files that are transformed into bilingual README tables via a GitHub Action using Go templates. The data lineage is: contributors add YAML files under items/<category>/<tool>.yaml with fields kind, owner, repo, desc, and desc_en; on push to main, the generator workflow runs the eryajf/yaml-readme action to fetch live GitHub metadata (license, stars, creation/update dates) and render README.md and resources/README-en.md from the provided templates. The repository serves as a discovery resource for engineers evaluating ops tools, answering questions like 'what are the best open-source tools for a given ops category?' and 'what is the license, star count, and last update of a tool?'. It is actively maintained with recent commits, a YAML linting CI, and a clear contribution guide. The reusable assets are the templating pattern and CI workflows, which can be adapted to any curated list or structured-data-to-document pipeline.
Elyra is a JupyterLab extension suite that provides a visual pipeline editor for building, validating, and executing multi-step AI/ML workflows on Kubeflow Pipelines, Apache Airflow, or locally. It includes enhanced script editors (Python, R, Scala) with kernel management and debugging, a code snippet manager, and a metadata-driven system for runtime configurations, runtime images, and component catalogs. The backend (Python) handles pipeline parsing, validation, code generation via Jinja2 templates, and submission to remote orchestrators, while the frontend (TypeScript/React) delivers a rich UI with drag-and-drop, property editing, and real-time validation. The architecture is modular with pluggable runtime processors, component catalog connectors, and metadata storage backends, making it extensible for custom runtimes and data sources. Although primarily an application, it serves the MLOps domain by orchestrating data science notebooks and scripts as reproducible pipelines.
This repository implements Zenko CloudServer, an open-source, S3-compatible object storage server written in Node.js. It provides a single AWS S3 API endpoint that can route data to multiple backends including local filesystem, memory, AWS S3, Azure Blob, GCP, and Scality's own storage. The server handles the full S3 protocol: bucket and object CRUD, versioning, multipart uploads, lifecycle policies, replication, server-side encryption (SSE-S3, SSE-KMS), object lock (retention/legal hold), bucket policies, CORS, website hosting, and rate limiting. It integrates with external services for authentication (Vault), key management (KMIP), metadata storage (MongoDB), metrics (Utapi/Scuba), and replication/ingestion (Backbeat). The architecture is a multi-process Node.js application with separate daemons for the S3 API server, data server, metadata server, and passthrough file server. Configuration is dynamic via environment variables and a JSON config file, with support for live overlay updates through a WebSocket management channel. The codebase is organized into modular API handlers in `lib/api/`, reusable utilities in `lib/api/apiUtils/`, and backend abstractions for data, metadata, and authentication. Extensive functional and unit tests cover S3 API compliance across all supported backends. Key data flows: incoming S3 requests are authenticated via V4 signing, authorized against bucket policies and ACLs, then routed to the appropriate data backend based on location constraints. Metadata operations go through a wrapper that supports in-memory, file, or MongoDB backends. Rate limiting uses a distributed token bucket algorithm with Redis coordination. Metrics are pushed to Utapi and exposed via Prometheus. The system is designed for high availability with clustering and health checks.
This is a mature Maven plugin (io.fabric8:docker-maven-plugin) that integrates Docker container lifecycle management into Maven builds. It enables building Docker images from Dockerfiles, Maven assemblies, or Jib; pushing images to registries; running containers for integration tests; and managing volumes, networks, and logs. The plugin is widely used in Java/Spring Boot projects for containerized testing and deployment. Architecturally, the plugin follows a layered design: Maven Mojo classes (e.g., BuildMojo, StartMojo, StopMojo) serve as entry points, delegating to a service layer (ServiceHub, BuildService, RunService, RegistryService) that orchestrates Docker operations. The access layer (DockerAccess interface, implemented by DockerAccessWithHcClient) communicates with the Docker daemon via HTTP over Unix sockets, Windows named pipes, or TCP. Configuration is resolved from Maven POM XML, Maven properties, Docker Compose files, or external handlers, with a flexible property merging system. Key data flows include: (1) image build: resolve configuration → create build context (assembly or Dockerfile) → send to Docker daemon → tag and optionally push; (2) container lifecycle: resolve run config → create container → start with wait conditions → track for shutdown; (3) authentication: chain of providers (system properties, Maven settings, Docker config.json, credential helpers, AWS ECR, OpenShift) to obtain registry credentials. The plugin also supports BuildX for multi-architecture images and a watch mode for live-reload during development. External dependencies include the Docker Engine API, Apache HttpClient 4.x, Google Gson, SnakeYAML, Jib Core, and jnr-unixsocket. The codebase is well-tested with over 200 unit tests and integration tests running against multiple Docker versions on Linux, macOS, and Windows.
Vackup is a standalone bash script CLI tool for backing up and restoring Docker volumes. It provides four core commands: export (volume to tarball), import (tarball to volume), save (volume to Docker image), and load (Docker image to volume). The tool runs temporary busybox containers to perform file operations, ensuring compatibility across Linux and macOS. It features robust error handling with user-definable failure hooks, cross-platform path resolution, and a comprehensive Bats test suite. The tool is designed to be run from any host with Docker CLI access, with optional Docker image distribution via the provided Dockerfile.
Tunet is a modern, responsive React dashboard for Home Assistant that provides a customizable interface for monitoring and controlling smart home entities. The application features a React/Vite frontend with an Express/Node.js backend, using SQLite for persistent storage of user configurations. It implements a modular card-based UI system with 20+ specialized card types (lights, climate, media, etc.), real-time WebSocket synchronization with Home Assistant, and extensive customization options including theming, layout configuration, and plugin-like extensibility. The application follows React best practices with custom hooks, context API for state management, and a well-organized component architecture.
Luet is a container-native package manager for building, installing, and managing software packages. It uses Docker/buildah as build backends, treats packages as container images, and employs SAT solving (with optional Q-learning) for dependency resolution. The application features a CLI-driven architecture with commands for package operations, repository management, and system maintenance. Key architectural elements include a modular design with pluggable solvers, compiler backends, and repository clients, plus a context-based dependency injection system for logging, configuration, and garbage collection. The system stores package metadata in BoltDB or in-memory databases and supports templating via Sprig for dynamic package definitions.
This is a NestJS boilerplate for building RESTful APIs with TypeScript, PostgreSQL, TypeORM, and modern DevOps practices. The system provides a modular backend architecture with authentication (JWT), user management, post management, email verification via BullMQ queues, health checks, Swagger API documentation, and comprehensive testing setup. It follows NestJS best practices with clear separation of concerns across modules for auth, users, posts, health, and background jobs. Key features include cursor-based and offset-based pagination, internationalization (i18n), Redis caching, security headers via Helmet, and environment-based configuration management. The codebase demonstrates strong engineering practices with reusable utilities for password handling, configuration validation, and sophisticated cursor pagination that could be extracted to other projects with minimal modification.
Gogs is a self-hosted Git service written in Go, providing a full-featured platform for hosting Git repositories with issue tracking, pull requests, wiki, webhooks, and Git LFS support. The backend is a monolithic Go application using a dual web framework (Macaron and Flamego) and dual ORM (XORM and GORM) during an ongoing migration. The frontend is a hybrid of legacy server-rendered templates and a modern React SPA built with TanStack Router, Radix UI, and Tailwind CSS. The system supports multiple authentication backends (LDAP, SMTP, PAM, GitHub OAuth), SSH and HTTP Git protocols, and extensive REST API. It is deployed via Docker with s6 supervisor and backup rotation scripts. The codebase demonstrates strong engineering practices with well-structured utility packages, security-conscious input validation, and comprehensive test coverage using golden files and mock stores. However, it carries technical debt from the framework migration, vendored outdated frontend plugins (CodeMirror 5.17.0), and a monolithic legacy JavaScript file.
Nginx Proxy Manager is a full-stack web application that provides a graphical user interface and REST API for managing Nginx reverse proxy configurations, SSL/TLS certificates (via Let's Encrypt or custom uploads), TCP/UDP streams, access control lists, and user permissions. The system is designed to run as a Docker container and is primarily used by self-hosting enthusiasts and small-to-medium deployments to simplify the otherwise complex task of configuring Nginx and maintaining certificates. The architecture is a classic three-tier web application: a Node.js/Express backend (ES modules) with Objection.js/Knex ORM supporting SQLite, MySQL, and PostgreSQL; a React 18/19 frontend built with TypeScript, Vite, TanStack Query, and Tabler UI; and a set of s6-overlay managed services (backend, frontend, Nginx) inside a single Docker image. The backend generates Nginx configuration files from Liquid templates and reloads Nginx on any change. External dependencies include Nginx, Certbot (for Let's Encrypt), OpenSSL, and optionally a database server. Key entry points are `backend/index.js` (server startup, migration, setup, Express app) and `frontend/src/main.tsx` (React bootstrap). The primary data flow is: user creates or modifies a proxy host, redirection, stream, or certificate via the UI → API call → backend validates permissions and data → persists to database → regenerates relevant Nginx config files → tests configuration → reloads Nginx. The system also periodically checks for certificate expiration and renews via Certbot, and fetches IP ranges from Cloudflare/Cloudfront for access control. The codebase demonstrates solid engineering practices: a consistent internal service layer with access control and audit logging, a well-typed API client with automatic camelCase/decamelize conversion, a reusable table framework built on TanStack Table, and a comprehensive i18n system supporting 24+ locales. While some modules (e.g., certificate management) are large and could benefit from refactoring, the overall structure is clean and maintainable.
Khue's Homelab is a GitOps-driven infrastructure-as-code framework that automates a complete self-hosted Kubernetes platform from bare metal to user-facing applications. The codebase is organized into five layers: metal (Ansible roles that PXE-boot Fedora Server, bootstrap a k3s cluster with kube-vip HA, and install Cilium for networking/load balancing), system (bootstrap Helm charts for ArgoCD, cert-manager, ingress-nginx, Rook Ceph, and monitoring), platform (Gitea, Woodpecker CI, Grafana, Kanidm identity, Dex SSO, zot container registry), apps (Jellyfin + the *arr stack, Matrix, Paperless, Ollama, and more), and external (Terraform-managed Cloudflare DNS, tunnel, and ntfy alerting). ArgoCD ApplicationSets watch the git repository and deploy every Helm chart, making the repo itself the source of truth; a single top-level `make` drives the entire pipeline. The project demonstrates strong IaC craftsmanship: idempotent Ansible roles with checksum-verified downloads and run_once state handling (k3s token genesis, kubeconfig extraction), an ephemeral PXE server with per-MAC kickstart files and DHCP-proxy mode, declarative random secret generation via a small Go tool combined with the External Secrets Operator for cross-namespace secret sync, and a Terraform module that creates least-privilege Cloudflare API tokens injected directly into the cluster. It also includes a Nix dev shell for reproducible tooling, pre-commit hooks, Woodpecker CI that renders Helm diffs on pull requests, and Terratest-based smoke/integration/version tests. The author explicitly labels the project ALPHA and recommends forking for personal use. It is best treated as a reference architecture and a collection of reusable provisioning patterns rather than a turnkey product; some portions (scripts/hacks, take-screenshots, the gitea config job) are acknowledged work-in-progress, and a few pinned versions lag the ecosystem (Go 1.19 in-cluster compile jobs, k3s 1.30, several stale container image tags).
Kata Containers is an open-source secure container runtime that runs each container inside a lightweight virtual machine (microVM), providing strong workload isolation while maintaining container-like performance and orchestration. The project provides a containerd shim-v2 implementation, a guest-side agent, and supports multiple hypervisors including QEMU, Cloud Hypervisor, Firecracker, and its own built-in VMM (Dragonball). It integrates deeply with Kubernetes (runtime classes, CSI, mutating webhooks, policy generation via Rego) and supports confidential computing features (TDX, SEV-SNP, IBM Secure Execution, ARM CCA). The codebase is dual-language: the primary runtime is written in Go, with a newer Rust rewrite (runtime-rs) that shares core libraries with the agent and Dragonball VMM. The project is actively maintained with extensive CI, multi-architecture support, and a large ecosystem of tools (agent-ctl, kata-ctl, log-parser, trace-forwarder, genpolicy). While the architecture is modular and many components (e.g., safe-path, dbs-allocator, retry library) are independently reusable, the coexistence of two runtime implementations, generated API clients, and architecture-specific code introduce some technical drift and maintenance overhead.
Wallos is a self-hosted PHP web application for tracking personal subscriptions, payments, and budgets. It provides a full CRUD interface for subscriptions with categories, currencies, payment methods, and household members. The backend is PHP 8.3 with SQLite, served via Nginx and PHP-FPM in a Docker container. It supports multi-user accounts, OIDC/OAuth login, TOTP two-factor authentication, and email/password reset flows. The application includes a rich set of notification channels (email, Discord, Telegram, Pushover, Gotify, ntfy, Web Push, webhooks, and more) triggered by cron jobs for upcoming payments and cancellations. A statistics dashboard aggregates costs, trends, and budget comparisons. The codebase is organized as a flat PHP application without a framework, using custom includes for shared logic and a simple API layer for external access. The architecture follows a page-based pattern where each PHP file serves as a route, with AJAX endpoints under `/endpoints/` for dynamic actions. The application demonstrates attention to security with CSRF tokens, prepared statements for all SQL queries, input validation, and a centralized SSRF protection module for outbound HTTP requests. A notable feature is the Web Push notification implementation that follows RFC 8290-8292 using VAPID and ECDH encryption. The currency conversion system uses a WeakMap-based cache per request to avoid repeated API calls. The codebase is actively maintained with frequent releases and a comprehensive migration system. However, the code exhibits significant repetition across notification channels and logo handling, with many nearly identical endpoint files. The i18n system is manually maintained across 20+ languages, leading to potential drift. The application lacks a formal testing framework beyond a custom test harness that checks security regressions and data integrity. The absence of a Composer dependency manager and reliance on vendored libraries (PHPMailer, Parsedown) adds maintenance overhead. Overall, Wallos is a functional, feature-rich self-hosted application with some well-crafted security components but suffers from code duplication and boilerplate typical of PHP applications without a framework.
WireHole is a Docker Compose project that combines WireGuard, Pi-hole, and Unbound to create a private VPN with ad-blocking and recursive DNS resolution. It is not a software library but an infrastructure deployment template. The stack provides a VPN server, DNS filtering through Pi-hole, and private DNS resolution via Unbound, all running in containers. The project is designed for easy deployment on a Linux server, with a focus on security (e.g., web interfaces bound to localhost, minimal container capabilities, strong password generation). It supports two VPN backends: wg-easy (with a web UI) and linuxserver/wireguard (configuration-file based). The codebase consists of shell scripts for setup, migration, and diagnostics, along with CI/CD pipelines, test suites, and detailed documentation. The project demonstrates high operational maturity with comprehensive tests, pinning of image versions, and a doctor script for troubleshooting. While it is not a reusable software library, its scripts and configuration patterns are well-crafted and could serve as templates for similar Docker Compose deployments.
HTTPS-PORTAL is a Docker image that automates HTTPS setup using Nginx and Let's Encrypt. It provides a fully automated reverse proxy that obtains SSL certificates, configures Nginx, and handles renewal. The container runs multiple supervised processes via s6-overlay: Nginx, docker-gen (for automatic container discovery), cron (for certificate renewal), and a dynamic environment watcher. Configuration is driven by environment variables, primarily the `DOMAINS` variable which supports a rich syntax for specifying upstreams, redirects, basic auth, access restrictions, custom ports, and per-domain stages. The codebase is primarily Ruby scripts that parse domain descriptors, generate Nginx configuration from ERB templates, and orchestrate certificate signing via acme-tiny. The architecture is clean and modular, with clear separation between domain parsing, certificate management, and Nginx configuration generation. The repository includes comprehensive integration tests using Docker Compose and RSpec.