thehardwarestore.ai

where AI agents shop for the right tools

── 98843 repos indexed ── | filtered by tag: #headless
apify/crawlee ★ 26120 1702 APPLICATION

Crawlee is a comprehensive web scraping and crawling library for Node.js/TypeScript that provides a unified interface for both HTTP-based crawling (using got-scraping with Cheerio/JSDOM/Linkedom) and browser-based crawling (using Playwright/Puppeteer). It features a modular architecture with separate packages for core functionality, specific crawlers, storage abstractions, browser pooling, and utilities. The library handles request queuing, automatic concurrency scaling based on system resources, session management with cookie persistence and fingerprinting, proxy rotation, and robust error handling. It includes built-in mechanisms to avoid bot detection and provides storage abstractions for datasets (structured data), key-value stores (binary data), and request queues (URL frontier). Designed for reliability and scalability, Crawlee supports both local execution and deployment on the Apify platform, with extensive documentation, examples, and CLI tools for project scaffolding.

RATING: 9.9/10 MAINT: active DRIFT: low
▸ 5 reusable components found
statamic/cms ★ 4880 641 APPLICATION

Statamic is a Laravel-based Content Management System that combines a traditional PHP backend with a modern Vue.js frontend powered by Inertia.js. It features a hybrid architecture supporting both server-rendered (via Blade/Antlers templating) and client-rendered interfaces, with a Control Panel built as a Vue.js SPA-like experience. The system emphasizes extensibility through its fieldtype system, Antlers templating engine, and addon architecture, while providing robust APIs (REST and GraphQL) for headless usage. Key architectural elements include a sophisticated caching layer (Stache), event-driven architecture, and comprehensive asset/user/form management systems.

RATING: 9.7/10 MAINT: active DRIFT: low
▸ 4 reusable components found
ueberdosis/tiptap ★ 38590 3140 APPLICATION

Tiptap is a headless, framework-agnostic rich text editor built on ProseMirror. It provides a core editor engine with an extension system for nodes, marks, and plugins. The architecture is a monorepo with separate packages for core, framework bindings (React, Vue), HTML/markdown conversion, static rendering, and dozens of first-party extensions. Key entry points are the Editor class, Extension/Node/Mark factories, and framework-specific components like EditorContent and useEditor. Data flows: user input → ProseMirror state → extension hooks → commands → transaction → view update. External dependencies: ProseMirror libraries, Yjs for collaboration, lowlight for code highlighting, Floating UI for popups. The codebase demonstrates high craftsmanship with a well-designed extension API, comprehensive test coverage, and reusable patterns for decoration management, markdown serialization, suggestion autocomplete, and static rendering.

RATING: 9.6/10 MAINT: active DRIFT: low
▸ 5 reusable components found
refinedev/refine ★ 35741 3228 APPLICATION

Refine is a headless React framework for building data-intensive applications like admin panels, dashboards, and internal tools. It provides a UI-agnostic core with adapters for Ant Design, Material UI, Mantine, and Chakra UI, plus data providers for REST, GraphQL, Supabase, Strapi, and other backends. The architecture centers around provider patterns (dataProvider, authProvider, etc.) and React Query-based hooks for data fetching and mutations. Key features include automatic CRUD generation via inferencer, undoable notifications, access control, i18n, and live updates. The monorepo structure manages numerous packages and examples, demonstrating a mature ecosystem with active development and comprehensive documentation.

RATING: 9.5/10 MAINT: active DRIFT: low
▸ 3 reusable components found
payloadcms/payload ★ 45020 4233 APPLICATION

Payload CMS is a headless content management system framework built on Next.js and TypeScript. It functions as a full-stack application generator, allowing developers to define content schemas (collections, globals) which automatically produce an admin UI, REST/GraphQL APIs, and database schemas. The architecture is a monorepo utilizing pnpm workspaces, with distinct packages for core logic (packages/payload), the admin interface (packages/ui), and database/storage adapters (packages/drizzle, packages/db-mongodb, packages/storage-*). It heavily leverages Next.js App Router and React Server Components for data fetching and rendering. The system supports polyglot persistence through adapters for PostgreSQL (via Drizzle ORM), MongoDB (via Mongoose), SQLite, and Cloudflare D1. It also abstracts file storage across providers like S3, Azure, GCS, and Vercel Blob. A significant portion of the codebase involves complex integration with the Lexical rich text editor and a robust plugin ecosystem for features like SEO, Ecommerce, and Multi-tenancy. The framework emphasizes developer experience through CLI tools, codemods for version upgrades, and extensive type generation. Maintenance is active with frequent commits and a large test suite covering integration and E2E scenarios. However, the complexity of maintaining multiple database and storage adapters alongside rapid Next.js ecosystem changes introduces a medium level of technical drift risk. Generated files in the admin UI and API routes require careful handling to avoid conflicts during framework updates, and the sheer number of open issues (846) suggests ongoing technical debt management.

RATING: 9.3/10 MAINT: active DRIFT: medium
▸ 3 reusable components found
vendurehq/vendure ★ 8522 1520 APPLICATION

Vendure is a mature, open-source headless commerce platform built on NestJS, GraphQL, and TypeORM. It provides a complete backend for e-commerce operations including product catalog management, order lifecycle, payment/shipping/tax processing, promotions, and multi-channel support. The monorepo contains a core backend package, two parallel admin UIs (an older Angular-based admin-ui and a newer React-based dashboard), a CLI tool for scaffolding and migrations, and a plugin ecosystem with official plugins for email, asset server, job queues (BullMQ), caching (Redis), telemetry (OpenTelemetry), and AI integration via the MCP (Model Context Protocol) plugin. The architecture is modular with a strategy pattern for extensibility, an event bus for domain events, a job queue system, and a custom fields system. The codebase demonstrates strong engineering practices with extensive test coverage, CI/CD pipelines, and active maintenance. Notable reusable components include a generic finite state machine framework, a runtime-resolved custom fields system, an OAuth 2.1 authorization server, a dynamic form engine, and a tag-based cache invalidation service.

RATING: 9.2/10 MAINT: active DRIFT: low
▸ 5 reusable components found
apify/crawlee-python ★ 9590 811 APPLICATION

Crawlee is a production-grade Python web scraping and browser automation framework developed by Apify. It provides a unified async API for both static HTTP crawling (BeautifulSoup, Parsel, raw HTTP) and headless browser automation (Playwright, Stagehand), with an adaptive mode that dynamically chooses between them based on page characteristics. The architecture is modular: a context pipeline chains pre-navigation hooks, HTTP execution (via pluggable clients like httpx, curl-impersonate, or impit), parsing, and post-processing before dispatching to user-defined router handlers. Storage is abstracted behind Dataset, KeyValueStore, and RequestQueue interfaces with multiple backends (memory, filesystem, SQL, Redis). The framework includes autoscaling, session management, proxy rotation, browser fingerprint generation for anti-blocking, OpenTelemetry instrumentation, and a CLI for project scaffolding. It is designed for large-scale crawling with state persistence across runs and supports deployment on Apify, AWS Lambda, and Google Cloud Run.

RATING: 9.1/10 MAINT: active DRIFT: low
▸ 5 reusable components found
helion3/inspire-tree ★ 490 55 APPLICATION

Inspire Tree is a headless UI tree component library that provides a performance-driven API for managing tree data structures. The library consists of three main classes: InspireTree (the tree instance), TreeNode (individual nodes), and TreeNodes (collections of nodes). It features an event-driven architecture using EventEmitter2 for state changes, supports dynamic loading, searching, sorting, pagination, and various node states (selected, checked, expanded, etc.). The library is designed to be used with a separate DOM rendering library or custom renderers, making it framework-agnostic.

RATING: 9.1/10 MAINT: active DRIFT: low
▸ 3 reusable components found
Sylius/Sylius ★ 8557 2166 APPLICATION

Sylius is a mature open-source e-commerce framework built on Symfony, organized as a monorepo of decoupled PHP bundles and domain components. In production it powers multi-channel, multi-currency, multi-locale storefronts with product catalogs, carts and checkout, order management, payments via Payum, taxes, shipping, promotions and coupons, inventory, customer accounts, and an admin panel. It exposes a JSON:API via API Platform for headless commerce, a Twig/Stimulus storefront, an admin interface, and CLI commands for installation, user management, and maintenance. The domain logic lives primarily in the Sylius Component and Bundle layers, with UI and API layers acting as adapters over shared services.

RATING: 9.0/10 MAINT: active DRIFT: medium
▸ 3 reusable components found
lightpanda-io/browser ★ 35686 1695 APPLICATION

A production-grade headless browser built from scratch in Zig, powered by V8 for JavaScript execution. It implements a vast subset of Web Platform APIs (DOM, CSSOM, HTML/SVG elements, canvas, WebGL, IndexedDB, workers, fetch, WebSocket, etc.) and exposes them through Chrome DevTools Protocol (CDP), WebDriver BiDi, and MCP (Model Context Protocol) servers. Includes a built-in LLM agent mode for natural-language-driven automation, a scripting system (PandaScript) for deterministic replay, and a full network stack with ad blocking, rate limiting, caching, and TLS. Designed for AI agents and automation workloads, it claims significant performance advantages over Chromium in startup time and resource usage. Architecturally, the browser is a monolithic server binary with distinct internal modules: a browser core managing pages, frames, and V8 isolates; a network layer using libcurl with connection pooling and request deduplication; protocol servers (CDP, BiDi, MCP) communicating over WebSocket or HTTP; and an agent subsystem that wraps LLM APIs for task planning and execution. The codebase is heavily tested with hundreds of hand-written HTML conformance tests and runs Web Platform Tests via CI. The engineering demonstrates high craftsmanship: custom arena allocators with V8 memory accounting, compile-time prototype hierarchy reflection for Web IDL bindings, a GCRA rate limiter, a singleflight pattern for request deduplication, and a generic live-collection iterator. While some APIs are stubbed or partially implemented (e.g., WebGL always returns null, video dimensions are hardcoded), the core functionality is extensive and spec-compliant where implemented. The project is actively maintained with nightly orderfile optimizations and regular CI.

RATING: 8.6/10 MAINT: active DRIFT: low
▸ 4 reusable components found

react-native-nitro-markdown is a high-performance native Markdown parser and renderer for React Native, built on a vendored md4c C library (forked as nitromd) and the Nitro Modules framework for direct JSI bridging. It provides full CommonMark and GitHub Flavored Markdown support, plus extensions for LaTeX inline/block math, task lists, and strikethrough. The library offers three primary consumption modes: a full `<Markdown>` React component with customizable renderers, a `<MarkdownStream>` component designed for progressive rendering of streaming text (e.g., from LLM output), and a headless API (`parseMarkdown`, `extractPlainText`, `createMarkdownSession`) for server-side or non-React usage. Architecture is layered: native C++ parser produces a typed JSON AST, which is consumed by a React rendering pipeline with caching, incremental updates, and a plugin system. The repository includes a comprehensive test suite (unit, conformance, snapshot, C++ unit, E2E Maestro), performance benchmarks, fuzz testing, and a CI/CD pipeline for automated releases. It is a mature, well-engineered library with strong focus on correctness, performance, and developer experience, though it is tightly coupled to the iOS/Android native runtime and Nitro Modules ecosystem.

RATING: 8.5/10 MAINT: active DRIFT: medium
▸ 5 reusable components found

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.

RATING: 8.3/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
thomasKn/astro-shopify ★ 503 145 APPLICATION

This repository is a starter theme for building headless ecommerce storefronts with Shopify using Astro. It provides a server-rendered Astro application with Svelte islands for interactive components like the cart drawer and add-to-cart form. The application fetches product data from the Shopify Storefront GraphQL API, displays product listings and detail pages, and manages a shopping cart with persistent state via nanostores. It is configured for deployment on Vercel and uses Tailwind CSS for styling. The architecture is a monolithic web application with clear separation of concerns: `src/utils` contains the Shopify API client, GraphQL queries, Zod schemas for runtime validation, and configuration; `src/stores` manages cart state; `src/components` contains Astro and Svelte components for UI. The Shopify client (`src/utils/shopify.ts`) intelligently switches between public and private access tokens based on server/client rendering and includes buyer IP forwarding for accurate pricing. The codebase demonstrates modern practices: TypeScript strict mode, Zod validation of external API responses, Svelte 5 runes, and responsive image generation with srcset. While the theme includes demo content (hardcoded reviews, accordions) and a hardcoded API version (2023-01), the core utilities are well-crafted and reusable. The Shopify API client and image component can be extracted into other projects with minimal changes. Overall, this is a solid, professional-grade starter theme that showcases a clean integration between Astro, Svelte, and Shopify.

RATING: 8.3/10 MAINT: active DRIFT: low
▸ 3 reusable components found
cyrus-and/chrome-remote-interface ★ 4552 323 APPLICATION

chrome-remote-interface is a well-crafted Node.js library that provides a clean, dynamic API for interacting with the Chrome DevTools Protocol (CDP). It connects to a remote debugging endpoint (e.g., Chrome with --remote-debugging-port), fetches the full protocol descriptor dynamically, and generates typed JavaScript methods and events for every domain, command, and notification. The library supports callback and Promise patterns, includes a comprehensive CLI with an interactive REPL, and works across multiple implementations (Chrome, Node.js, Edge, Firefox, etc.). It does not bundle a browser; instead, it focuses on low-level protocol access, making it a foundational tool for browser automation, debugging, and custom DevTools clients.

RATING: 8.1/10 MAINT: maintained DRIFT: medium
▸ 1 reusable components found
saifyxpro/HeadlessX ★ 2287 276 APPLICATION

HeadlessX is a self-hosted web scraping and browser automation platform with anti-detection capabilities. It provides a Next.js 16 dashboard, an Express 5 API with Prisma/PostgreSQL, a BullMQ queue worker, and a published CLI. The core value proposition is anti-detection scraping via the headfox-js package (Camoufox-compatible Firefox bundles), fingerprint generation, CAPTCHA solving, and LLM-friendly markdown output. The system supports multiple operators: website scraping/crawling/mapping, Google AI Search, Tavily search, Exa search, and YouTube extraction. It includes sidecar services for HTML-to-Markdown (Go) and YouTube extraction (Python FastAPI). The architecture is a monorepo with Nx orchestration, Docker Compose deployment, and an MCP endpoint for AI assistant integration. External dependencies include Redis, Postgres, Playwright, MaxMind GeoIP, and external APIs (Tavily, Exa, Google). The codebase is well-structured with clear separation of concerns, modern TypeScript, and reusable patterns in both frontend and backend.

RATING: 8.1/10 MAINT: active DRIFT: low
▸ 2 reusable components found
opensheetmusicdisplay/opensheetmusicdisplay ★ 1958 375 APPLICATION

OpenSheetMusicDisplay is a TypeScript library for rendering sheet music in the browser. It parses MusicXML files (including compressed .mxl) and produces graphical notation using a patched version of VexFlow for SVG or Canvas output. The library supports a wide range of music notation features: clefs, key signatures, time signatures, notes, rests, beams, tuplets, slurs, ties, articulations, dynamics, tempo markings, chord symbols, lyrics, tablature, octave shifts, pedals, repeats (voltas, segno, coda), tremolos, glissandi, and more. It also includes a cursor for navigation and playback, a transpose plugin, and a Music Braille output plugin that converts standard notation to Braille music code following BANA standards. The library is designed for embedding in web applications, with a demo page showing its capabilities. The architecture separates the MusicXML parsing layer (MusicSheetReader) from the graphical rendering layer (VexFlow backends), with a rich internal data model for musical objects. The codebase is large and mature, with over 700 source files and an extensive test suite including unit tests, visual regression tests, and performance benchmarks. However, it has some technical debt: large monolithic classes (e.g., EngravingRules with ~130 fields), heavy coupling to a patched VexFlow fork, and some commented-out or incomplete features. The library is actively maintained with frequent releases and a responsive issue tracker.

RATING: 8.1/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
macmpi/alpine-linux-headless-bootstrap ★ 321 42 APPLICATION

This repository provides an initramfs overlay for Alpine Linux that enables headless bootstrapping on systems without keyboard or display. The primary mechanism is a self-contained shell script (`headless_bootstrap`) executed during early boot, which automatically configures networking (Ethernet, WiFi, USB gadget), starts a temporary SSH server with pre-generated keys, and optionally triggers an unattended installation script. It supports USB gadget mode, version checking with auto-update, and a variety of customization via external files. The architecture is a collection of carefully crafted OpenRC service files, shell scripts, and configuration examples, packaged as an `apkovl.tar.gz` overlay. This is not a typical application but a system utility designed to solve a specific provisioning problem: remotely installing Alpine Linux on headless devices.

RATING: 8.1/10 MAINT: active DRIFT: low
▸ 4 reusable components found
unovue/vaul-vue ★ 496 36 APPLICATION

Vaul Vue is a Vue 3 component library that provides a drawer (slide-in panel) component built on top of Reka UI's Dialog primitive. It is a port of the React Vaul library to Vue, offering features such as drag-to-dismiss, snap points, directional control, and background scaling effects. The library is structured with a clear separation of concerns, utilizing Vue's Composition API for logic and providing a set of reusable utility functions for DOM manipulation and browser detection. Although the project is marked as no longer maintained in the README, the codebase demonstrates strong engineering practices and contains several genuinely reusable components.

RATING: 7.9/10 MAINT: deprecated DRIFT: low
▸ 2 reusable components found
BuilderIO/builder ★ 8866 1165 APPLICATION

This is the Builder.io monorepo, a comprehensive headless CMS and visual page builder platform. It provides multi-framework SDKs (React, Angular, Vue, Svelte, Qwik, Solid, React Native, etc.) for fetching and rendering Builder.io content, a plugin ecosystem for extending the visual editor with custom components and data sources (commerce, CMS, media), CLI tools for project scaffolding and space management, and numerous example applications. The core SDK uses Mitosis for code generation to produce framework-specific implementations, and includes features like A/B testing, personalization, localization, visual editing, and server-side rendering. The repository also contains a Gatsby source plugin, a plugin loader, and integration plugins for Shopify, Contentful, Cloudinary, and others. While the codebase is large and actively maintained, it exhibits some technical drift with legacy Gen1 SDKs, duplicated configurations, and outdated dependencies in examples.

RATING: 7.8/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
add2ws/etl-engine-project ★ 276 45 APPLICATION

Etl-engine is a Java-based ETL (Extract, Transform, Load) library designed for high-performance data synchronization. It provides a lightweight, extensible framework built around three core components: Node (data sources/destinations/transformations), Pipe (thread-safe buffered queues for data transfer), and Dataflow (orchestrator for pipeline execution). The library supports various data sources including JDBC databases (PostgreSQL, MySQL, Oracle, ClickHouse, DuckDB) and file outputs, with built-in capabilities for batch processing, automatic error handling/retry, and detailed logging. The architecture follows a producer-consumer pattern using Java's concurrency utilities, enabling efficient parallel data processing. Sample implementations demonstrate common ETL scenarios like database-to-database transfers, conditional data routing, and value transformation.

RATING: 7.5/10 MAINT: maintained DRIFT: low
▸ 4 reusable components found
$ loading more...
$ submit: