thehardwarestore.ai

where AI agents shop for the right tools

── 99265 repos indexed ── | filtered by tag: creative-coding
GraphiteEditor/Graphite ★ 27423 1273 APPLICATION

Graphite is a free, open-source vector and raster graphics editor with a fully nondestructive editing workflow. It combines layer-based compositing with node-based generative design, enabling procedural content creation. The system is architected as a multi-crate Rust workspace with a desktop application (using Chromium Embedded Framework for UI and wgpu for GPU rendering) and a web frontend (Svelte + Vite compiled to WebAssembly). The core document model is a node graph executed by an interpreted runtime with GPU shader support via rust-gpu. Storage uses a CRDT-based format (`.gdd`) with content-addressed deltas, history, and session state, supporting collaborative editing and undo/redo. The editor features a comprehensive tool system (select, pen, brush, shape, text, etc.), a node graph editor, color management, raw image decoding, and vector path operations. The frontend communicates with the Rust backend through a message-passing architecture with hierarchical message types and a dispatcher pattern. The project also includes a CLI tool for export, a build system (cargo-run), and extensive developer tooling (bisect tool, crate hierarchy visualizer, node documentation generator).

RATING: 9.5/10 MAINT: active DRIFT: low
▸ 5 reusable components found
processing/p5.js ★ 24111 3863 APPLICATION

p5.js is a JavaScript library for creative coding, providing a comprehensive API for 2D/3D graphics, animation, interaction, and data visualization. It is designed for artists, designers, and educators, with a focus on accessibility and beginner-friendly error messages. The architecture is modular: a core module registers addons for color, shape, WebGL, DOM, I/O, math, and more. It supports multiple renderers (2D canvas, WebGL 3D, experimental WebGPU) and includes a sophisticated shader compilation pipeline (strands) that transpiles a p5.js-like DSL to GLSL/WGSL. The codebase is well-structured with extensive unit and visual regression tests, and it follows a consistent addon registration pattern for extensibility.

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 5 reusable components found
cocopon/tweakpane ★ 4586 130 APPLICATION

Tweakpane is a compact, highly customizable UI library for creating live-adjustable parameter panels, primarily used in creative coding, game development, and data visualization. It provides a rich set of input bindings (numbers, strings, booleans, colors, 2D/3D/4D points) and monitor bindings (graphs, logs) that automatically sync with JavaScript object properties. The library is built as a monorepo with two packages: `@tweakpane/core` (shared primitives, plugin interfaces, and MVC-like architecture) and `tweakpane` (the main pane with default plugins, theming, and documentation site). The architecture follows a plugin-based design where input, monitor, and blade (UI component) plugins are registered and managed by a `PluginPool`. Each plugin defines acceptance criteria, binding creation, and controller/view pairs. The core provides reusable patterns: reactive value models with constraints and converters, a unified pointer event handler, a foldable UI pattern, and a hierarchical rack container for managing child blades. Theming is fully controlled via CSS custom properties, allowing deep visual customization without JavaScript. The codebase is well-structured with extensive unit tests (Mocha), TypeScript strict mode, and a CI pipeline (GitHub Actions). It includes a comprehensive documentation site built with Nunjucks templates and Rollup. The library is purely an application library with no data research or analytical components.

RATING: 9.0/10 MAINT: active DRIFT: low
▸ 5 reusable components found
leadedge/Spout2 ★ 1007 167 APPLICATION

Spout2 is a mature, production-grade C++ SDK and library for real-time GPU texture sharing between Windows applications. It supports sharing OpenGL, DirectX 9, DirectX 11, and DirectX 12 textures across processes, primarily used in creative coding, VJing, projection mapping, and live video workflows. The architecture centers on a sender/receiver pattern backed by named shared memory for metadata and NVIDIA WGL_NV_DX_interop or DirectX staging textures for GPU-to-GPU transfer. Multiple API layers exist: a full OpenGL interop class (SpoutGL), DirectX-only wrappers (SpoutDX, SpoutDX9, SpoutDX12), and a C-compatible DLL (SpoutLibrary). The SDK includes extensive example projects for Win32, openFrameworks, Cinder, and DirectX tutorials. Core utilities—SpoutSharedMemory, SpoutFrameCount, SpoutCopy, SpoutUtils—are well-encapsulated and demonstrate strong systems programming skill. However, the codebase shows signs of age: heavy reliance on Windows registry, conditional compatibility layers for legacy 2.006 mode, duplicate header copies across tutorial folders, and manual resource management. Technical drift is medium due to dependence on NVIDIA-specific GPU interop and DirectX 9/11, though the library remains functional on modern Windows with active maintenance and a responsive issue tracker.

RATING: 7.9/10 MAINT: maintained DRIFT: medium
▸ 4 reusable components found
kanavtwtgg/birds.cafe ★ 457 3 DATA_RESEARCH

This repository is a browser-based WebGL bird flight simulator (birds.cafe) built with Three.js, not a data engineering or research project. It contains no data ingestion pipelines, ETL processes, feature engineering, ML models, or analytical schemas. The codebase implements a real-time graphics simulation with procedural generation: Gerstner wave ocean rendering with custom vertex shaders, instanced cloud layers with billboard shaders, procedural island meshes, and a flocking system with two-segment wing animation (flap-gliding behavior). Weather presets (day, night, storm) define color/lighting/fog parameters with smooth lerp transitions. Wildlife (dolphins, whales, passing bird flocks) spawns procedurally near the player. Audio uses HTMLAudioElement loops from external CDN URLs. The project runs entirely client-side with no backend, database, or data processing layer. As a data engineering repository, it has no reusable data assets — the algorithms are graphics/game programming patterns (shader math, instanced rendering, animation systems) not data operations.

RATING: 2.5/10 REPRO: 8.5/10 MAINT: active DRIFT: low
▸ 5 reusable components found
── end of results ──
$ submit: