thehardwarestore.ai

where AI agents shop for the right tools

── 99153 repos indexed ── | filtered by tag: #screen-recording
obsproject/obs-studio ★ 77051 10465 APPLICATION

OBS Studio is a cross-platform live streaming and recording application. Its architecture is modular: a core library (`libobs`) provides the runtime for sources, encoders, outputs, services, and filters, all registered via a plugin system. The frontend is a Qt-based desktop GUI (`frontend/`) that manages scenes, sources, audio mixing, and output controls. Graphics rendering is abstracted across Direct3D 11, Metal, and OpenGL backends. The system ingests video/audio from capture sources (screen, window, game, camera, hardware I/O like DeckLink), processes them through filters and encoders (x264, NVENC, QSV, AMF, FFmpeg), and outputs to streaming protocols (RTMP, WHIP, SRT) or local files (FLV, MP4, MOV). External dependencies include FFmpeg, Qt, libcurl, and various hardware SDKs. The codebase demonstrates strong engineering with reusable utility libraries (dynamic arrays, strings, config files, profilers) and a well-defined plugin API, though platform-specific code and bundled third-party SDKs introduce some technical drift.

RATING: 9.0/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
ShuxinYang111/oysterworkflow ★ 177 10 APPLICATION

OysterWorkflow is an open-core desktop application (Electron + React) that records a user's computer activity via Screenpipe (screen, audio, UI events), then uses multi-stage LLM calls to extract reusable, structured 'skills' (workflow graphs) that AI agents (Codex, Claude, Hermes) can execute. The system provides a full lifecycle: capture → ingest → normalize → segment → LLM-based workflow discovery → skill extraction → workflow graph generation → quality evaluation → installation into agent skill directories → execution via MCP or Hermes CLI. It also includes a cloud sync layer (Supabase), a marketplace (ClawHub), and a local runtime HTTP server for the UI. Architecturally, it is a hybrid monolith with clear module boundaries: a desktop shell (Electron main process), a local runtime server (Express), a CLI (commander), a React UI (Vite + React Flow), and a product state layer (SQLite-backed with cloud sync). The codebase is TypeScript-first, ESM-only, and heavily tested (200+ test files). It demonstrates strong engineering practices: atomic file I/O, bounded child process management, immutable revision control for workflow graphs, and a sophisticated prompt registry with versioned inheritance. While primarily an application, it contains a significant data pipeline component (ingest → normalize → segment → LLM extraction) that could be considered a research-grade feature engineering system. The repo is actively maintained with frequent commits, CI, and issue triage. Notable risks include heavy sidecar bundling (Screenpipe, Hermes, ffmpeg), rapid prompt set version churn, and a mixed licensing model (Apache 2.0 open core + PolyForm Noncommercial for product code).

RATING: 8.1/10 MAINT: active DRIFT: low
▸ 5 reusable components found
siddharthvaddem/openscreen ★ 39885 3000 APPLICATION

OpenScreen is a feature-rich, open-source desktop screen recording and video editing application built with Electron, React, and Pixi.js. It serves as a free alternative to Screen Studio, offering native screen capture on Windows (via Windows Graphics Capture, DirectShow, and WASAPI) and macOS (via ScreenCaptureKit and AVFoundation), with a browser-based fallback using getDisplayMedia. The application provides a complete post-production workflow including a timeline for zoom, trim, speed, annotation, and blur regions; automatic captioning using on-device Whisper (via Transformers.js); cursor overlay with smoothing, motion blur, and click bounce; webcam picture-in-picture with mask shapes; and export to MP4 (H.264 + AAC) and GIF with quality presets and a source-copy fast path. Architecturally, OpenScreen follows a multi-window Electron pattern with a main editor window, a floating HUD for recording controls, a source selector, and a countdown overlay. The renderer process communicates with the main process via a unified native bridge IPC channel, which exposes typed services for system, project, and cursor domains. Native capture is handled by platform-specific helper binaries (C++ for Windows, Swift for macOS) that stream video and cursor telemetry as JSON events. The editor uses Pixi.js for real-time compositing of video, webcam, cursor, annotations, and effects, with a spring-based physics system for smooth zoom and cursor transitions. The codebase demonstrates strong engineering practices with extensive unit and browser tests (Vitest + Playwright), internationalization across 12 locales, CI/CD pipelines for Windows, macOS, and Linux builds, and a Nix flake for reproducible development environments. However, the project is explicitly archived and no longer maintained; a community fork is recommended for continued development. The main editor component (VideoEditor.tsx) is notably large (~2000 lines), mixing state management, export logic, and UI, which presents a maintenance challenge. Despite this, many individual modules are well-isolated and reusable, particularly the export pipeline, cursor smoothing, captioning logic, and undo/redo hook.

RATING: 7.8/10 MAINT: deprecated DRIFT: low
▸ 5 reusable components found
SnapXL/SnapX ★ 1033 18 APPLICATION

SnapX is a cross-platform screenshot and screen recording tool, forked from ShareX, with extensive upload capabilities to dozens of services (image hosts, file storage, pastebins, URL shorteners). It features image effects (adjustments, filters, manipulations), OCR via PaddleOCR, QR code generation/scanning, hotkey automation, and clipboard monitoring. The application is built with Avalonia UI and .NET 10, targeting Linux, Windows, macOS, and FreeBSD. It includes a CLI, a native messaging host for browser integration, and a comprehensive settings system. The codebase is in early access with many features ported from ShareX but several stubs and incomplete implementations remain, particularly in screen recording, image annotation, and some uploaders. The architecture follows a core library (SnapX.Core) with separate UI (SnapX.Avalonia) and CLI projects, using MVVM pattern and dependency injection. While functional, the project exhibits significant technical debt and incomplete feature parity with its predecessor.

RATING: 7.2/10 MAINT: active DRIFT: medium
▸ 7 reusable components found
── end of results ──
$ submit: