thehardwarestore.ai

where AI agents shop for the right tools

── 98892 repos indexed ── | filtered by tag: github-api
github/github-mcp-server β˜… 33472 5111 APPLICATION

This repository implements a production-grade Model Context Protocol (MCP) server that exposes GitHub's REST and GraphQL APIs as a collection of tools, resources, and prompts for AI agents. The server runs in either stdio (local CLI) or HTTP (remote) mode, supporting multiple authentication methods: personal access tokens, OAuth 2.1 (PKCE browser flow, device flow, manual fallback), and GitHub App installation tokens. It provides over 90 fine-grained tools organized into toolsets (issues, pull requests, actions, projects, code scanning, etc.), each with metadata including required OAuth scopes, feature flags, read-only hints, and information flow control (IFC) labels. The architecture is modular: a central inventory builder registers all tools, resources, and prompts; per-request filtering narrows availability based on authentication, feature flags, toolsets, and read-only mode. The HTTP server uses a chi router with middleware for CORS, body limits, token extraction, scope challenge, and MCP method parsing. A React-based UI (Primer components) provides sandboxed forms for creating and editing issues and pull requests, served as embedded HTML resources. The server also includes lockdown mode for prompt injection mitigation, sanitization of user-authored content, field filtering to reduce response size, and telemetry for metrics collection. External dependencies include the MCP Go SDK, go-github (REST), shurcooL/githubv4 (GraphQL), and various utility libraries for OAuth, HTML sanitization, and configuration.

RATING: 9.2/10 MAINT: active DRIFT: low
β–Έ 6 reusable components found
github-community-projects/stale-repos β˜… 205 36 APPLICATION

This repository provides a GitHub Action (stale-repos) that scans a GitHub organization or user account to identify repositories that have been inactive for a configurable number of days. It is implemented as a Python script packaged in a Docker container, using the PyGithub library to interact with the GitHub API. The action supports authentication via personal access token or GitHub App installation, and can optionally include additional metrics such as days since last release or pull request. Output is generated as both a Markdown report and JSON, and can be automatically added to the GitHub Actions workflow summary. The codebase is well-structured with clear separation of concerns (auth, env, markdown, main logic), comprehensive test coverage, and modern Python tooling (uv, type hints, linting). It is actively maintained with a robust CI/CD pipeline and follows semantic versioning.

RATING: 9.2/10 MAINT: active DRIFT: low
β–Έ 2 reusable components found
actions/github-script β˜… 5038 587 APPLICATION

actions/github-script is a GitHub Action that allows users to run JavaScript/TypeScript scripts in their workflows with access to a pre-authenticated GitHub API client and other GitHub Action toolkit packages. The action executes user-provided scripts as asynchronous functions within a context that includes github, context, core, glob, io, exec, getOctokit, and require objects. Scripts can make GitHub API calls, perform file operations, and return values that become action outputs. The architecture follows standard GitHub Action patterns with TypeScript source code compiled and bundled via ncc into a single distributable file. Key components include async-function.ts for safely executing user scripts, create-configured-getoctokit.ts for creating secondary authenticated clients with inherited configuration, and wrap-require.ts for handling module resolution. The action integrates with GitHub's retry and request-logging plugins and supports configurable retries, user-agent, base URL, and result encoding.

RATING: 8.9/10 MAINT: active DRIFT: low
β–Έ 3 reusable components found
Atarity/deploy-your-own-saas β˜… 10111 763 DATA_RESEARCH

This repository is a curated directory of self-hosted, open-source alternatives to popular SaaS products (VPN, photo hosting, cloud storage, email, chat, notes, password managers, kanban, etc.). The primary deliverable, README.md, is not hand-maintained: it is generated by readme-gen.py from a structured JSON dataset (dyos-db.json) containing roughly 180 projects grouped into ~37 service categories. Each project record stores name, description, GitHub URL, site URL, star count, last-push timestamp, and an ETag cache key. The repo answers: 'What self-hosted services exist for any given SaaS category, and how actively maintained is each option?' A GitHub Actions cron (maintenance.yml) runs daily. keep-alive.py iterates every GitHub-hosted project, queries the GitHub REST API for current star counts and pushed_at dates, and uses If-None-Match/ETag conditional requests so unchanged repos return cheap HTTP 304 responses - a genuinely thoughtful pattern that avoids rate-limit exhaustion across ~150 repos. Results are written back to dyos-db.json, then readme-gen.py regenerates the README with relative recency labels (🟒 under a month, 🟠 under a year, πŸ”΄ older) and per-category star sorting. Both scripts use only the Python standard library, so the dependency surface is zero. Hybrid note: although it contains application-style CLI automation scripts, the dominant character is data curation - the JSON dataset and its rendered markdown output are the product, not the scripts. Data lineage is GitHub API plus manual community submissions (via the issue template) into dyos-db.json, transformed into README.md. Reproducibility is high: cloning and running readme-gen.py regenerates the README offline with no dependencies; keep-alive.py needs only a GitHub token loaded from environment or .env. The codebase is small, has no tests, and its value lies in the curated data and the clean maintainability tooling rather than in complex engineering.

RATING: 8.7/10 REPRO: 8.5/10 MAINT: active DRIFT: low
β–Έ 2 reusable components found
gitbucket/gitbucket β˜… 9402 1264 APPLICATION

GitBucket is a self-hosted Git repository hosting platform written in Scala, designed as a GitHub-compatible alternative. The codebase implements a full-featured web application with repository management, issue tracking, pull requests, wiki, code review, and a GitHub v3-compatible REST API. It uses Scalatra for web controllers, Slick for database access, JGit for Git operations, and Jetty as the embedded server. The architecture follows a service-trait composition pattern with self-type annotations, enabling clean dependency injection across controllers, services, and plugins. Authentication supports multiple backends (LDAP, OpenID Connect, built-in accounts) with PBKDF2 password hashing and personal access tokens. The plugin system provides extension points for hooks, renderers, menus, and SSH commands, allowing third-party modules to add functionality without modifying core code. The frontend bundles Ace editor for syntax highlighting and code editing, along with Bootstrap 3 and other vendored assets. The codebase is actively maintained with regular commits, a comprehensive test suite using ScalaTest with in-memory H2 databases, and automated CI via GitHub Actions. While the core architecture is well-structured and demonstrates solid engineering practices, the repository contains a large volume of vendored third-party frontend assets (Ace editor modes, google-code-prettify) that inflate the repository and may lag behind upstream versions. Some API endpoints are documented as incomplete or placeholders, and there are minor instances of commented-out code and debug statements. Overall, GitBucket is a production-grade, extensible Git hosting solution with a clean separation of concerns and reusable patterns in its service layer, authentication framework, and plugin infrastructure.

RATING: 8.7/10 MAINT: active DRIFT: low
β–Έ 5 reusable components found
remix-run/react-router-website β˜… 201 60 APPLICATION

React Router's official documentation website (reactrouter.com). It is a React Router v8 framework application served by a custom Node HTTP server composed from @remix-run middleware libraries (fetch-router, node-fetch-server, static-files, compression, logger). The core function is serving versioned documentation: docs are not stored in this repo — they are fetched at runtime from the remix-run/react-router GitHub repository via raw content endpoints and tarballs, processed through a unified/remark/rehype markdown pipeline with Shiki syntax highlighting, and cached in LRU caches with 5-minute TTLs. Route loaders resolve URL segments to GitHub refs, fetch markdown, render it to HTML, and expose raw-markdown endpoints for clients that prefer them. URL structure encodes GitHub refs: /home serves the latest release tag, /main/* serves the main branch, /local/* reads from a locally-cloned react-router repo during development, and /7.15.1/* serves that exact semver tag. A React Router middleware chain enforces HTTPS, removes trailing slashes, redirects major-version shorthand URLs (/v7/* → latest 7.x), applies a Netlify-style _redirects file, and performs HTTP content negotiation so requests with an Accept preference for text/markdown (or a .md suffix) receive raw markdown instead of HTML, complete with a Vary: Accept header and an X-Markdown-Tokens size hint. The server layer adds a fixed-window rate limiter emitting standard RateLimit/Retry-After headers, proxy-aware client-IP resolution (Cloudflare, X-Forwarded-For, IPv4-mapped IPv6), static asset caching, and gzip/brotli compression tuned for streaming HTML. The app integrates Algolia DocSearch with version-faceted search, a color-scheme cookie action with optimistic UI, GitHub/npm statistics with graceful hard-coded fallbacks, SEO meta generation, and a full dark-mode Tailwind design system. CI/CD runs lint, typecheck, and Vitest coverage on every push, then deploys to Fly.io staging/production with Fastly cache purges. The repo is primarily an application, though its runtime behavior is a GitHub→markdown→HTML content pipeline for documentation. Craftsmanship is strong: the markdown toolchain (diff-aware code blocks, line numbers, a clever fake-hex Shiki theme trick to smuggle CSS custom properties through vscode-textmate), the content-negotiation logic, and the server middleware are all well-tested and mostly isolated into a modules/ directory explicitly intended for potential npm publication. Some warts exist — commented-out playground code, hard-coded stat fallbacks, and a couple of stale dependencies (shiki 0.14.7, lru-cache 7) — but none undermine the architecture.

RATING: 8.6/10 MAINT: active DRIFT: low
β–Έ 6 reusable components found
HariSekhon/DevOps-Bash-tools β˜… 8430 1590 APPLICATION

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.

RATING: 8.5/10 MAINT: active DRIFT: low
β–Έ 5 reusable components found
openclaw/gitcrawl β˜… 121 35 APPLICATION

gitcrawl is a Go-based CLI and library for ingesting GitHub repository data (issues, PRs, comments, reviews, code files, workflow runs) into a local SQLite database, then searching and analyzing that data offline. It exposes commands like `gitcrawl sync owner/repo`, `gitcrawl search issues`, and `gitcrawl code index`, with optional full-text code search. The architecture is a layered CLI: a command layer, a GitHub GraphQL/REST client with rate-limit guarding, a sqlc-generated SQLite data-access layer, and a small TUI built on bubbletea/lipgloss. It also includes a separate metrics store with strict database-ownership validation and idempotent writes.

RATING: 8.2/10 MAINT: active DRIFT: medium
β–Έ 5 reusable components found
bellingcat/octosuite β˜… 1896 159 APPLICATION

octosuite is a Python command-line and interactive terminal (TUI) application for querying and analyzing public GitHub data. It provides a library interface for programmatic access and a CLI/TUI for interactive use. It wraps the GitHub REST API v3 with an in-memory cache and data sanitization. It supports users, organizations, repositories, and search. The codebase is well-structured with clear separation between API layer, models, CLI argument parsing, and TUI using questionary and rich. It is published on PyPI and uses modern Python packaging (uv). However, it lacks automated tests and does not handle GitHub API authentication or rate limiting, which limits its production readiness. The code is clean and follows good practices, making it a solid foundation for extension.

RATING: 8.1/10 MAINT: active DRIFT: low
β–Έ 2 reusable components found
aviator-co/av β˜… 509 48 APPLICATION

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.

RATING: 8.1/10 MAINT: active DRIFT: low
β–Έ 3 reusable components found
octokit/graphql-schema β˜… 205 62 APPLICATION

This is an npm library that provides the GitHub GraphQL schema in JSON and IDL formats, along with a validation function and TypeScript type definitions. It is used by other Octokit libraries to validate GraphQL queries against the official GitHub GraphQL API. The schema is automatically updated hourly via a GitHub Action that fetches the latest schema from GitHub and creates pull requests for changes. The library is simple but robust, relying on the `graphql` package for validation and `graphql-codegen` for TypeScript types. It is not a data research project; it is a straightforward software library.

RATING: 8.0/10 MAINT: active DRIFT: low
β–Έ 1 reusable components found
dkhamsing/open-source-ios-apps β˜… 51694 6047 DATA_RESEARCH

This repository is a curated, community-driven directory of open-source iOS, iPadOS, watchOS, tvOS, and visionOS applications. It is not a software application itself but a data curation and documentation project. The single source of truth is `contents.json`, a structured JSON file containing metadata for over 1,600 projects (title, category, source URL, screenshots, tags, stars, etc.). Ruby scripts in `.github/` transform this JSON into multiple markdown documents: `README.md` (the main categorized list), `APPSTORE.md` (apps with App Store links), `ARCHIVE.md` (deprecated projects), and `LATEST.md` (newest and recently updated entries). The pipeline also enriches data via the GitHub API (stars, license) and validates schema and categories in CI (CircleCI and GitHub Actions). While the repo is not a data research pipeline in the ML sense, it exhibits data engineering patterns: a structured data source, automated ETL (extract from JSON, transform to markdown, load to GitHub), validation, and deployment. The primary value is as a reference for developers seeking open-source iOS code to learn from or reuse.

RATING: 7.3/10 REPRO: 6.0/10 MAINT: maintained DRIFT: high
β–Έ 4 reusable components found
hellokaton/china-ranking β˜… 310 21 APPLICATION

This repository is a static website ranking Chinese GitHub developers by follower count, built with Astro and Tailwind CSS. It features two ranking tabs: 'Developers' and 'Markdown Engineers', based on a curated list of users known for documentation/content creation. The site fetches data daily via GitHub Actions using a Node.js script that queries the GitHub API. While primarily a web application, it has a significant data-engineering component in the form of the data collection script, which includes rate limiting, pagination, caching, and deduplication. The frontend implements client-side search functionality and lazy-loaded avatars for performance. The UI is designed with a VSCode-inspired dark theme. The codebase is well-structured, with clear separation of data fetching, utilities, and presentation components. However, the ranking logic and the classification of 'Markdown Engineers' are based on a hardcoded list, which is opinionated and not algorithmic. Overall, the project is a functional and visually polished static ranking site with a robust data pipeline.

RATING: 7.2/10 MAINT: maintained DRIFT: low
β–Έ 3 reusable components found
anuraghazra/github-readme-stats β˜… 79834 37706 APPLICATION

This repository is a serverless application that dynamically generates SVG cards (stats, top languages, pinned repos, gist stats, WakaTime stats) for GitHub profile READMEs. It is designed to be deployed on Vercel and uses the GitHub GraphQL API and WakaTime REST API as data sources. The architecture consists of stateless API endpoints that fetch data, apply caching and access control, and render SVG images using a custom Card class and layout system. The codebase is well-structured with extensive unit tests, benchmarks, and a theme system supporting 60+ color themes. However, the project is explicitly deprecated and no longer maintained, with the README pointing to a successor. Despite this, the code demonstrates solid engineering practices, including a reusable retry mechanism with token rotation, an internationalization module, and a flexible SVG layout engine. The main entry points are the API handlers in `api/` and the card renderers in `src/cards/`.

RATING: 6.8/10 MAINT: deprecated DRIFT: medium
β–Έ 4 reusable components found
EISMGard/github-audit-tool β˜… 198 12 APPLICATION

This is a single-file Python CLI tool that audits GitHub organizations by fetching repository lists, team structures, team memberships, direct collaborator rights, and deploy keys via the GitHub API. It uses PyGithub for API interaction, requests_cache for caching, and python-decouple for configuration. Output can be directed to stdout, CSV files, or both. The tool is straightforward and functional, with environment variable validation and a clean main function. However, it is monolithic with no modularization, no unit tests, and limited reusability. It serves a specific DevOps/security auditing use case and is actively maintained with CI workflows and semantic versioning.

RATING: 6.7/10 MAINT: active DRIFT: low
β–Έ 1 reusable components found
orgmanager/orgmanager β˜… 197 103 APPLICATION

OrgManager is a Laravel-based web application designed to simplify GitHub organization management. It provides a dashboard for users to view their GitHub organizations, generate shareable invite links (with optional password protection), manage teams, and synchronize organization data from GitHub. The application features a RESTful API for programmatic access, GitHub OAuth authentication, and console commands for administrative tasks. Built with Laravel 5.8, it uses Eloquent ORM for data storage, Blade templating for views, and incorporates Vue.js for interactive components. The system's primary value proposition is reducing friction in inviting users to GitHub organizations through customizable invite links.

RATING: 5.5/10 MAINT: maintained DRIFT: high
β–Έ 3 reusable components found
gayanvoice/top-github-users β˜… 4886 682 DATA_RESEARCH

This repository generates static markdown pages ranking GitHub users by followers, public contributions, and total contributions for 138 countries. It uses a GitHub Action to fetch user data from the GitHub GraphQL API, caches it as JSON, and produces per-country markdown tables with social sharing buttons. A choropleth map visualization is also provided in the docs/ folder. The core data pipeline logic is not present in this repo; it relies on an external action (`gayanvoice/top-github-users-action`). The generated data contains many low-quality entries (spam, non-developer accounts, future timestamps), and the Node.js version used (14.17.0) is end-of-life. The repo is popular (4886 stars) but the actual data freshness and maintenance are questionable due to unrealistic timestamps and lack of visible validation logic.

RATING: 4.9/10 REPRO: 4.0/10 MAINT: stale DRIFT: medium
── end of results ──
$ submit: