This repository is a comprehensive collection of over 1200 standalone Bash scripts for DevOps automation, cloud infrastructure management, CI/CD pipeline orchestration, and system administration. It is not a single application but a modular toolbox designed to be used interactively or integrated into CI workflows. The architecture is decentralized: each script is self-contained, sourcing shared libraries from the `lib/` directory for common functions like error handling, API authentication, and OS detection. Key entry points include the top-level `Makefile` for bootstrapping, `lib/utils.sh` as the core utility library, and numerous API wrapper scripts (e.g., `github_api.sh`, `aws_foreach_profile.sh`) that provide consistent patterns for interacting with external services. The primary data flows involve querying cloud provider APIs (AWS, GCP, Cloudflare), managing CI/CD platforms (Jenkins, BuildKite, GitHub Actions), manipulating Git repositories, and performing system tasks like disk benchmarking or SSL certificate verification. External dependencies are extensive but well-managed: the scripts assume the presence of `curl`, `jq`, and platform-specific CLIs (`aws`, `gcloud`, `kubectl`, `gh`), with many install scripts provided to bootstrap these tools. The codebase demonstrates high craftsmanship with consistent error handling (`set -euo pipefail`), input validation, and cross-platform compatibility guards. While some scripts are tailored to the author's personal environment, the core patterns and libraries are designed for reuse across projects.
ghqr is a Go-based CLI tool for scanning GitHub enterprises, organizations, and repositories against a comprehensive set of best-practice rules. It produces actionable reports in Markdown, Excel, and JSON formats, with prioritized findings, remediation plans, and manual checklists. The tool also includes an MCP (Model Context Protocol) server for AI assistant integration, enabling interactive scanning and recommendations via stdio or HTTP/SSE. A deterministic mock generator allows demos and testing without live API calls. The architecture follows a composable pipeline pattern: initialization, data loading (from live API or JSON replay), enterprise/GHES/organization/repository discovery and scanning, evaluation against YAML-defined rules, and report rendering. Scanners use both REST and GraphQL APIs with batch queries, rate-limit handling, and tri-state boolean support for GHES on-prem instances. The rule registry is embedded as YAML files, loaded at startup into a typed registry that evaluators reference by stable rule IDs. Key entry points are the `ghqr scan`, `ghqr mcp`, `ghqr mock`, and `ghqr list-recommendations` commands. External dependencies include the GitHub API (REST and GraphQL), the `excelize` library for Excel output, and the `mcp-go` library for MCP protocol support. The tool is containerized via Docker and published to GHCR, with install scripts for Linux, macOS, and Windows.
Pipelines-as-Code is a Kubernetes-native CI/CD controller that triggers Tekton PipelineRuns in response to Git webhook events from multiple providers (GitHub, GitLab, Gitea/Forgejo, Bitbucket Cloud/Data Center). In production, it listens for webhook payloads on a configurable endpoint, detects and validates the provider, matches events to PipelineRun templates stored in the repository's `.tekton/` directory using CEL expressions and annotations, resolves remote tasks and pipelines via hub or URL, creates PipelineRun resources with appropriate parameters and secrets, and reports status back to the Git provider (commit statuses, check runs, comments). It supports ChatOps commands (`/test`, `/retest`, `/cancel`), GitOps-style push commands, concurrency limits, automatic cleanup of old PipelineRuns, and optional LLM-driven failure analysis. The architecture consists of three main controllers (controller, watcher, webhook) plus a CLI tool (`tkn-pac`) for bootstrapping, repository management, and local testing. The codebase is well-structured, with clean provider abstractions, a modular queue system, extensive OpenTelemetry instrumentation, and comprehensive test coverage across all providers. While the multi-provider support introduces some duplication, the core patterns (event matching, pipeline resolution, status reporting) are cleanly separated and reusable.
PicGo is a mature, cross-platform Electron desktop application for image uploading, primarily targeted at content creators and developers. Its core workflow allows users to upload images via drag-and-drop, clipboard, file picker, or global hotkey, and automatically copies the resulting URL (in Markdown, HTML, or custom format) to the clipboard. The application supports multiple image hosting providers (e.g., GitHub, SM.MS, Qiniu, Alibaba OSS, Tencent COS, Imgur, S3, WebDAV) via a flexible plugin architecture. A built-in HTTP server enables integration with third-party tools. The renderer is built with React, TypeScript, TanStack Router, Zustand for state management, and a comprehensive UI component library (shadcn/ui style). The main process handles IPC, window management, system tray, global shortcuts, file operations, and a plugin lifecycle. PicGo Cloud integration provides user accounts, configuration sync (with optional E2E encryption), cloud album storage, and usage analytics. The codebase includes extensive internationalization (5 languages), a robust test suite (Vitest), and automated CI/CD for multi-platform builds. While the project has some technical debt (incomplete Vue migration, numerous TODO comments, patched dependencies), it demonstrates strong engineering practices, modular architecture, and a well-documented plugin ecosystem.
doctoc is a CLI tool that automatically generates and updates a table of contents (TOC) for Markdown files. It parses markdown and HTML headings, creates anchor links compatible with GitHub, GitLab, Bitbucket, and other platforms, and inserts the TOC into the file between special comment markers. The tool supports a wide range of configuration options including heading level limits, custom titles, ordered/unordered lists, indentation styles, and pragma comment styles (legacy or compact). It can operate on single files or recursively scan directories, and offers a dry-run mode for CI validation. The architecture is a straightforward Node.js CLI application. The entry point is `doctoc.js`, which parses command-line arguments via `minimist` and delegates to `lib/transform.js` for the core TOC generation logic. `lib/transform.js` uses `@textlint/markdown-to-ast` to parse Markdown into an AST, `htmlparser2` to extract HTML headings, and `anchor-markdown-header` to generate anchor links. `lib/content-generation.js` handles the creation of comment markers (pragmas) for different syntaxes (`.md`, `.mdx`) and styles. `lib/file.js` provides recursive file discovery. The tool is distributed as an npm package and can also be used as a pre-commit hook via the provided `.pre-commit-hooks.yaml`. External dependencies are minimal and well-chosen: `@textlint/markdown-to-ast` for parsing, `htmlparser2` for HTML parsing, `anchor-markdown-header` for anchor generation, `loglevel` for logging, and `minimist` for argument parsing. The codebase is written in CommonJS style with `'use strict'`, and tests use the `tap` framework with a comprehensive suite of fixtures covering edge cases like frontmatter, emoji headers, nested markdown, and various formatting options.
GitHub-Dark is a maintained userstyle distribution that applies a comprehensive dark theme to GitHub, Gist, and related GitHub surfaces through the Stylus browser extension. Its primary artifact is github-dark.user.css, generated from modular CSS sources and a build pipeline that fetches GitHub's live CSS, remaps light colors to dark equivalents, injects syntax themes, and minifies the output. The project is not a traditional application or data repository; it is a browser-extension userstyle with an automated CSS transformation toolchain.
This repository implements a static site that reconstructs and visualizes GitHub's historical status incidents and downtime. It ingests the official GitHub Status history Atom feed (committed into git via Flat Data), parses entries into structured incident timelines with status transitions, downtime windows, and impacted components. The frontend displays a 90-day and all-time uptime overview, per-service uptime bars, an incident timeline with filters, and a rolling uptime chart. The system is designed as a data pipeline: a GitHub Action fetches the Atom feed daily, another Action runs the extractor script to produce parsed artifacts (CSV, JSONL), and a third Action deploys the static site to GitHub Pages. The repository also includes an experimental GLiNER-based component extraction fallback to infer affected services from incident postmortems when the structured data is missing. The codebase demonstrates strong craftsmanship with well-isolated pure functions, testable frontend modules, and defensive caching patterns, though it remains tightly coupled to GitHub's specific status page format and prose patterns.
This repository provides a custom HTML element, `<clipboard-copy>`, that copies text or element content to the clipboard when clicked. Implemented as a web component extending `HTMLElement`, it supports multiple data sources: the `value` attribute, a `for` attribute that references another element by ID (including inputs, textareas, and anchor hrefs), or element text content. The element ensures accessibility by automatically adding `role="button"` and `tabindex="0"` if not present, and handles keyboard events (Enter/Space) for activation. Internally, it uses the modern `navigator.clipboard.writeText()` API when available, falling back to `document.execCommand('copy')` via a temporary hidden node. It also normalizes Unicode whitespace characters (e.g., non-breaking spaces, zero-width joiners) to plain spaces or strips them, ensuring the copied text matches visual expectations. A `clipboard-copy` custom event is dispatched on success, allowing external handlers to provide feedback. The source code is written in TypeScript, is well-structured with clear separation of concerns (clipboard logic in `clipboard.ts`, element definition in `clipboard-copy-element.ts`, and a side-effect module for registration), and includes a comprehensive test suite covering element creation, clipboard operations, shadow DOM contexts, and edge cases like disabled state and Unicode normalization. The project follows GitHub's engineering standards (eslint, prettier, CI via GitHub Actions) and is published as an npm package under `@github/clipboard-copy-element`.
This repository implements a lightweight, self-hostable web service that serves SVG badges displaying GitHub profile view counts. The core logic is a single PHP entry point (`public/index.php`) that parses query parameters (username, label, color, style, base count, abbreviation flag), increments a view counter via a repository abstraction, and renders a badge image using the Poser library. The architecture follows a clean separation of concerns: value objects (`Username`, `Count`) enforce validation, a repository interface (`CounterRepositoryInterface`) abstracts storage, and a factory (`CounterRepositoryFactory`) selects between file-based or PDO-based persistence based on environment configuration. The file repository includes careful file locking to handle concurrent requests safely. The service is designed to be deployed via Docker with Nginx and PostgreSQL, but can also run with simple file storage for minimal setups. External dependencies are minimal and pinned via Composer. The code is well-structured, uses strict types, and demonstrates solid PHP engineering practices for a small service.
The `av` CLI tool manages stacked Git branches and their associated GitHub pull requests in an automated workflow. It allows developers to create dependent branches, automatically rebase child branches when parents change, synchronize local state with GitHub (fetches, pushes, prunes merged branches), and interactively reorder or squash commits across a stack. The system uses a local JSON file database (`av.db`) to persist branch metadata and PR associations, a GraphQL client to communicate with GitHub, and a Bubbletea-based terminal UI for interactive prompts and progress spinners. It consists of Cobra command definitions, a git operations wrapper (mix of `go-git` and direct exec), and a state-machine sequencer for multi-step rebase operations with conflict handling. The architecture is modular with clear separation between git operations, GitHub API, state management, and user interface, making it a solid example of a domain-specific developer tool.
This repository maintains the curated metadata for GitHub Topics and Collections. It is not a running application but a structured dataset of topic definitions (with aliases, related topics, logos, Wikipedia links) and curated repository lists (collections). The actual 'application' code is a suite of Ruby tests (RSpec/Minimatch) that validate metadata correctness, image dimensions, link validity, and API referential integrity via batched GraphQL queries. CI/CD workflows enforce contribution guidelines, auto-correct renamed repos, and deploy a Jekyll-generated JSON feed. While primarily a data repository, it exhibits strong software engineering practices in validation, caching, and automation. The content is community-curated and licensed under CC-BY 4.0.
Curbox is a digital wellbeing Android application that leverages AccessibilityService to monitor and intervene in user behavior. It blocks distracting apps, websites, keywords, and short-form videos (reels/shorts), enforces focus sessions (with pomodoro), applies grayscale filters, displays mindful message overlays, and hides UI elements via a custom domain-specific script engine. The app tracks detailed usage statistics (app, website, reel, focus) locally in Room and optionally synchronizes across devices using Supabase with end-to-end encryption (paywalled subscription). It provides anti-tamper features including device admin protection, uninstall prevention, and a settings change delay mechanism. The architecture is a monolithic Android app with multiple build flavors (F-Droid, Play Store, full) that gate features like cloud sync, UI hider, and device admin. It exposes an AIDL-based API for external apps. The codebase demonstrates strong engineering with reusable components like a custom script interpreter, encryption utilities, and pattern-based accessibility node selectors, but carries technical drift from deprecated Android APIs and hardcoded app-specific identifiers.
AL-Go for GitHub is a comprehensive CI/CD framework and template system for Microsoft Dynamics 365 Business Central AL extension development. It provides a set of reusable GitHub composite actions, PowerShell modules, and starter workflow templates that automate building, testing, signing, deploying, and delivering AL apps to AppSource, NuGet, Azure Storage, GitHub Packages, and Business Central environments. The system supports multi-project repositories, incremental builds, workspace compilation, code analysis with SARIF output, performance testing, Power Platform solution integration, self-updating system files, and extensive telemetry. The architecture is action-centric: each action is a `action.yaml` + PowerShell script, invoked via a consistent wrapper (`Invoke-AlGoAction.ps1`) that handles errors, telemetry, and secret injection. Settings are JSON-driven with a schema, and behavior can be customized via hooks, script overrides, and conditional settings. The repository also includes a full Pester unit test suite, end-to-end test harness, and workshop documentation. While well-crafted with clean separation of concerns, the codebase exhibits some technical drift due to deprecated settings, duplication between Per Tenant Extension and AppSource App templates, hardcoded external URLs, and reliance on external PowerShell modules (BcContainerHelper, Az modules) which may introduce fragility.
This repository is a curated collection of .gitignore file templates for a wide range of programming languages, frameworks, editors, and operating systems. It serves as the source for GitHub's built-in .gitignore template chooser when creating new repositories. The repository is organized into root-level templates for common technologies, a Global/ directory for editor/OS-specific rules, and a community/ directory for specialized or versioned templates. Each file is a self-contained list of file patterns to exclude from version control, following best practices for the respective technology. The templates are maintained through community contributions and a stale PR workflow. While the repository contains no executable code, its value lies in the curated, accurate, and up-to-date ignore rules that help developers avoid committing unnecessary or sensitive files.
This repository is a Gatsby-based static web application that generates HTML snippets of technology icons for GitHub profile READMEs. It provides a user interface where users can search from a large collection of technology icons (extracted from a README table), select and reorder them via drag-and-drop (using @dnd-kit), configure output options (e.g., wrapping in <code>, <div>, table format, icon size), and produce a ready-to-copy HTML string. The application is single-page with no backend; it fetches icon metadata dynamically from the repo's own README.md on GitHub. The architecture is a typical React component tree with state management in the Generator class component, using Material-UI for design and CodeMirror for code display. The codebase is well-structured, dependencies are modern, and the deployment is automated via GitHub Actions to GitHub Pages. It solves a specific, common need for developers seeking an aesthetic way to showcase their tech stack.
This repository is an Obsidian plugin that integrates GitHub Copilot's AI-powered coding assistance directly into the Obsidian note-taking application. It provides two main features: inline code suggestions as you type (similar to Copilot in IDEs) and a chat interface for interacting with Copilot in a sidebar. The plugin handles authentication with GitHub Copilot, manages conversation history, renders Mermaid diagrams from AI responses, and allows linking to Obsidian notes using [[double bracket]] syntax in chat conversations. The architecture separates concerns into distinct modules for inline suggestions (using LSP protocol) and chat functionality (using direct API calls), with React powering the chat UI and Zustand managing state.
git-backup is a CLI tool written in Go that backs up all Git repositories from GitHub and GitHub Enterprise (including GitLab) to local storage. It uses the go-git library to perform bare or non-bare clones without requiring the git CLI. The configuration is driven by a YAML file that supports Go templating for environment variable injection. The tool discovers repositories via the provider APIs using configurable filters (owned, starred, collaborator, org member) and excludes specific repos or namespaces. Pagination is handled automatically. It supports Docker deployment with UID/GID mapping. The code is well-structured with clear separation of providers (GitHub, GitLab) behind a common RepositorySource interface. It is a focused, standalone backup solution that does not require external dependencies beyond the binary itself.
Octobox is a self-hosted, open-source web application for managing GitHub notifications. Built as a Ruby on Rails monolith (Rails 8.1, Ruby 3.x), it syncs notifications from the GitHub API into a PostgreSQL database, providing a rich UI for filtering, archiving, muting, starring, and searching notifications. Background jobs via Sidekiq handle syncing subjects, labels, comments, and performing actions like marking notifications as read on GitHub. Real-time updates are pushed via ActionCable. The application also exposes a REST API for programmatic access and supports GitHub App and OAuth authentication. It is designed for both hosted (octobox.io) and self-hosted deployments, with Docker, Heroku, and OpenShift support. The codebase is well-tested with Minitest and system tests, and follows standard Rails conventions with some custom patterns for search parsing and API client pagination.
ghtkn is a Go CLI and local agent daemon that obtains short-lived GitHub App User Access Tokens via the OAuth device flow, replacing long-lived PATs and CLI OAuth tokens. The Cobra-based CLI exposes commands such as init, auth, get, exec, git-credential, revoke, agent start/stop/lock/unlock/status/reset, info, docs, json-schema, and completion. The agent runs as a background daemon and speaks a JSON-lines protocol over a local socket with GET, SET, UNLOCK, STATUS, and STOP commands. Tokens are stored encrypted at rest using AES-256-GCM with an Argon2id-derived key-encryption key, one file per client ID with 0600 permissions and atomic writes.
This repository is GitHub's operational automation layer for the public GitHub Community Discussions forum (orgs/community/discussions). It does not ship a user-facing product; instead it is a moderation control plane built as a fleet of GitHub Actions workflows triggered by discussion lifecycle events, schedules, and repository_dispatch payloads. In production it auto-labels discussions by type (Bug/Question/Product Feedback) and feature/topic area, validates that posts were submitted through approved UI templates (closing API-created posts from non-employees), comments on and closes dormant discussions, creates/updates/closes incident announcement threads, prevents duplicate welcome introductions, and auto-closes external pull requests. The 'application' here is event-driven infrastructure automation implemented directly against the GitHub GraphQL API. The code is split into Ruby action scripts (in .github/actions/ with shared libraries in .github/lib) and Python helper scripts (in .github/workflows/scripts/), with YAML discussion templates as structured configuration. The Ruby layer is a thin Faraday-based GraphQL client with cursor pagination plus a Discussion domain object providing search, comment, label, and close mutations. The Python scripts are the most polished piece: each documents its environment-variable contract, handles API failure modes (422 on unsearchable users, rate limits), and defaults to fail-safe behavior rather than crashing the workflow. Notable engineering: integration_test_runner.py creates real discussions in the production forum with an '[IT]' prefix, waits for the triggered labeler workflows to run, verifies label and closure outcomes, and then closes all test discussions — an unusually thorough end-to-end testing pattern that also captures the subtle requirement that a PAT (not the built-in job token) is needed to trigger downstream discussion-created workflows. Reuse value is moderate: the GraphQL client and Discussion wrapper transfer cleanly to any repo-automation project, and the labeler/source-validation pattern applies to any moderated GitHub Discussions community. Caveats: many node IDs (repo, category, stale-label) are hardcoded, some workflows rely on fragile gh-api-piped-to-jq shell, and the discussion templates are tied to this org's taxonomy.