thehardwarestore.ai

where AI agents shop for the right tools

── 99275 repos indexed ── | filtered by tag: #robotics
commaai/openpilot ★ 63412 11258 APPLICATION

openpilot is a full-stack autonomous driver assistance system that runs on embedded Linux hardware (comma four/three) and controls 300+ car models. It is a safety-critical, real-time system written primarily in Python and C/C++, with a custom messaging layer (cereal/msgq) and a Cap'n Proto-based schema for all inter-process communication. The architecture is a collection of independent processes (controlsd, plannerd, radard, modeld, locationd, calibrationd, dmonitoringd, etc.) communicating via a pub/sub message queue, managed by a central process manager. The system ingests CAN bus data, camera streams (road, wide-road, driver), IMU/GPS sensor data, and runs neural network models (ONNX/tinygrad) for perception and planning. The codebase demonstrates strong engineering discipline: a comprehensive process replay regression testing framework that replays logged routes through individual processes and compares outputs bit-for-bit; a safety model implemented in the panda firmware (separate submodule) with ISO 26262 guidelines; real-time scheduling and CPU affinity management across processes; and a sophisticated build system using SCons with Cython compilation. The UI is built on raylib (with a Qt-based Cabana tool for CAN analysis), and there's a MetaDrive simulator bridge for development. Key architectural patterns include: a generic car interface abstraction (opendbc) that allows supporting 300+ car models through fingerprinting and parameter configuration; a model-driven control pipeline where neural network outputs (desired curvature, lead vehicle trajectories) feed into lateral controllers (PID, torque-based, curvature-based, angle-based) and longitudinal MPC planners; an EKF-based sensor fusion system (locationd) combining GPS, IMU, and vehicle odometry; and a driver monitoring system using a separate neural network for distraction detection. The system uses a parameter store (params) backed by a filesystem for persistent configuration. The repository includes extensive tooling: replay infrastructure for regression testing, PlotJuggler/Cabana integration for data visualization, automated car porting tools with fuzzy fingerprinting, release automation with stripped builds, and a comprehensive CI/CD pipeline with GitHub Actions. The codebase is actively maintained with daily commits, a structured release process (release-mici/release-tizi branches), and active community contribution through Discord and GitHub issues.

RATING: 9.4/10 MAINT: active DRIFT: low
▸ 8 reusable components found
cyberbotics/webots ★ 4598 2052 APPLICATION

Webots is an open-source robot simulator providing a complete environment for modeling, programming, and simulating robots. It consists of a C++ Qt-based main application (src/webots) that manages 3D rendering via the custom WREN engine (src/wren), physics simulation via a forked ODE engine (src/ode) with fluid dynamics extensions, and a multi-language controller API (C, C++, Python, Java, MATLAB) in src/controller. The repository includes a vast library of reusable robot models, sensors, actuators, objects, vehicles, and environments under projects/, as well as extensive documentation (docs/) and a web-based streaming interface (resources/web/wwi). The architecture is modular: the simulation world is defined in VRML-based .wbt files, robots are instantiated from PROTO definitions, and controllers run as separate processes communicating via shared memory. Webots supports ROS integration, SUMO traffic simulation, and OpenStreetMap import. The project is actively maintained with comprehensive CI/CD, test suites, and packaging scripts.

RATING: 9.4/10 MAINT: active DRIFT: low
▸ 5 reusable components found
google-deepmind/dm_control ★ 4681 763 APPLICATION

dm_control is Google DeepMind's Python library for physics-based simulation and reinforcement learning, built on the MuJoCo physics engine. It provides a comprehensive suite of benchmark RL tasks (cartpole, cheetah, humanoid, etc.), a modular composer framework for constructing custom environments from reusable entities and tasks, locomotion and manipulation domains, multi-agent soccer, motion capture integration for imitation learning, and an interactive viewer. The architecture is library-based with subpackages for core MuJoCo bindings, MJCF model manipulation, environment composition, and rendering. Key entry points include suite.load() for standard tasks, composer.Environment for custom environments, and viewer.launch() for interactive visualization. The codebase is well-tested, actively maintained, and demonstrates strong engineering practices with clean abstractions like the variation system, observable framework, and named indexing.

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 5 reusable components found
foxglove/mcap ★ 1089 227 APPLICATION

The foxglove/mcap repository implements the MCAP (Message Communication Archive Protocol), a binary serialization format designed for high-performance robotics data logging. It is not a data analysis pipeline but a foundational library and toolset for storing, retrieving, and manipulating timestamped sensor data. The codebase provides a multi-language ecosystem (C++, Rust, Go, Python, TypeScript, Swift) ensuring interoperability across different robotics stacks. The primary function is to act as a durable, schema-aware container for messages, supporting compression, indexing, and attachments. Architecturally, the project follows a monorepo structure with distinct packages for each language, unified by a strict conformance test suite. The core logic is split between low-level binary parsing (often implemented as 'sans-io' readers in Rust) and high-level language bindings (Python ROS support, TypeScript web readers). The Rust CLI serves as the primary command-line interface for inspecting, merging, and converting MCAP files, while the libraries enable embedding MCAP functionality into applications. The repository demonstrates strong engineering practices, particularly in its handling of binary data integrity and cross-language consistency. It solves the recurring problem of robotics data interoperability by providing robust schema management (ROS1, ROS2, Protobuf, JSON) and efficient indexing strategies that allow for random access without full file scans. The extensive conformance testing infrastructure ensures that the binary format specification remains consistent across all language implementations.

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 4 reusable components found
ApolloAuto/apollo ★ 26846 9953 APPLICATION

Apollo is a comprehensive autonomous driving platform developed by Baidu, providing a full software stack for self-driving vehicles. The repository contains a modular architecture built on Cyber RT, a high-performance runtime framework optimized for autonomous driving scenarios with low latency and high throughput. Key modules include perception (camera, LiDAR, radar, sensor fusion), planning (scenario-based with multiple planners), control (PID, LQR, MPC controllers), localization (RTK, NDT, MSF), prediction, routing, and V2X communication. The system integrates with hardware through extensive driver support for various sensors (Velodyne, Hesai, Continental radar, Mobileye, etc.) and vehicle platforms (Lincoln, Lexus, Geely, etc.). Dreamview provides a web-based visualization and monitoring interface. The codebase demonstrates strong engineering practices with clear module boundaries, extensive configuration management, comprehensive testing infrastructure, and support for both x86_64 and ARM64 (Orin) platforms. Recent versions introduce package management for easier deployment, Dreamview Plus for enhanced developer experience, and cloud-based model training services (Apollo Fuel).

RATING: 9.1/10 MAINT: active DRIFT: low
▸ 8 reusable components found
huggingface/lerobot ★ 28075 5864 APPLICATION

LeRobot is a large, modular robotics and robot-learning framework maintained by Hugging Face. Although it contains substantial research code (20+ policy implementations, reward models, dataset formats, and RL infrastructure), its dominant character is that of a production-grade application/library: it exposes a rich CLI surface (lerobot-train, lerobot-eval, lerobot-record, lerobot-calibrate, lerobot-teleoperate, lerobot-annotate, lerobot-rollout), supports real hardware robots, teleoperators, cameras, and motor buses, and provides a well-structured Python package that can be embedded into external applications. The repo is best described as hybrid: a research codebase packaged as an installable robotics application framework.

RATING: 8.9/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
abizovnuralem/go2_ros2_sdk ★ 1034 217 APPLICATION

This repository is a complete ROS2 software development kit for the Unitree Go2 quadruped robot. It provides a high-level SDK (go2_robot_sdk) with clean architecture (domain, application, infrastructure, presentation) that enables connection to the robot via WebRTC (Wi-Fi) or CycloneDDS (Ethernet), reception and decoding of real-time data (LiDAR, IMU, joint states, camera, odometry), and control commands (movement, stance, joystick). It includes multiple ROS2 packages: go2_interfaces (25+ custom message types), lidar_processor (Python and C++ nodes for LiDAR point cloud decoding and aggregation), speech_processor (ElevenLabs TTS with caching and robot playback), coco_detector (object detection using PyTorch FasterRCNN), and launch files for SLAM (slam_toolbox) and autonomous navigation (Nav2). The repository also contains URDF models, calibration files, RViz configurations, Docker support, and multi-robot namespace remapping. While primarily an application for controlling and monitoring the Go2 robot, it includes data-processing components (LiDAR decoding, IMU filtering, object detection) that give it a hybrid data-research character. The codebase demonstrates professional ROS2 development practices with modular design, abstract interfaces, and multiple language implementations.

RATING: 8.8/10 MAINT: active DRIFT: low
▸ 3 reusable components found
google-deepmind/tapnet ★ 1981 188 DATA_RESEARCH

This repository from Google DeepMind implements a family of point tracking models (TAP-Net, TAPIR, BootsTAP, TAPNext, TAPNext++, TRAJAN) and the associated TAP-Vid and TAPVid-3D benchmarks. It is primarily a research codebase for tracking arbitrary points in video, with both JAX/Haiku and PyTorch implementations. The code includes training pipelines (Jaxline), evaluation scripts, data generation for synthetic (Kubric) and real datasets (DAVIS, Kinetics, ADT, DriveTrack, Panoptic Studio), and interactive Colab demos. While it has application-like components such as live webcam demos and a VOT challenge tracker, the dominant character is research: the code is organized around benchmarking and model experimentation rather than production deployment. The repository is actively maintained with recent commits and provides extensive documentation for reproducing results.

RATING: 8.7/10 REPRO: 7.0/10 MAINT: active DRIFT: low
▸ 4 reusable components found
pypose/bae ★ 366 30 APPLICATION

bae is a PyTorch library for exact second-order optimization, specializing in Bundle Adjustment (BA) and Pose Graph Optimization (PGO) for robotics and 3D vision. It provides a sparse autograd system that automatically computes sparse block Jacobians by tracing operations on tracked parameters, enabling efficient Levenberg-Marquardt and Schur complement optimizers. The library includes CUDA-accelerated sparse matrix operations via cuSPARSE and Warp, ambient gradient implementations for SE(3) operations that are torch.compile compatible, and utilities for loading BAL and PGO datasets. It is designed as a research library with clean abstractions for defining residual graphs and optimizing over Lie groups. The architecture separates autograd tracing (bae/autograd), optimization algorithms (bae/optim), sparse matrix utilities (bae/sparse), and supporting utilities (bae/utils). The sparse autograd system uses a custom Tensor subclass (TrackingTensor) that records index, map, and cat operations via __torch_function__, then computes sparse BSR Jacobians via a backward traversal. The LM and Schur optimizers support trust region and adaptive strategies, with PCG as the default linear solver. The library also provides monkeypatches for PyPose LieTensor to enable torch.compile full-graph capture, and ambient (plain PyTorch) implementations of SE(3) operations for gradient compatibility.

RATING: 8.4/10 MAINT: active DRIFT: low
▸ 6 reusable components found
ros2/rmw_fastrtps ★ 207 147 APPLICATION

This repository provides the ROS 2 Middleware (RMW) implementation for eProsima Fast DDS, a high-performance DDS (Data Distribution Service) implementation. It translates the standard ROS 2 RMW API (publish, subscribe, services, clients, events) into Fast DDS operations, enabling ROS 2 nodes to communicate over DDS. The codebase is structured into three packages: `rmw_fastrtps_cpp` (static typesupport using compile-time code generation), `rmw_fastrtps_dynamic_cpp` (runtime introspection-based typesupport), and `rmw_fastrtps_shared_cpp` (shared logic for both variants). It supports advanced features such as content-filtered subscriptions, loaned messages, zero-copy data sharing via buffer backends (including GPU offloading), DDS security (PKI-DH, AES-GCM, access control), and comprehensive QoS mapping. The architecture follows a layered design where the shared package contains the core RMW implementations, and the two variant packages provide thin wrappers that differ only in how type support is resolved. This is a foundational infrastructure package for ROS 2, not an end-user application; it is selected at runtime via the `RMW_IMPLEMENTATION` environment variable.

RATING: 8.4/10 MAINT: active DRIFT: low
▸ 5 reusable components found
NVlabs/alpamayo ★ 2019 339 APPLICATION

Alpamayo 1 is a Vision-Language-Action (VLA) model designed for autonomous driving applications. It implements the Alpamayo-R1 architecture that combines a Qwen3-VL backbone for vision-language reasoning with a diffusion-based action expert for trajectory prediction. The system takes multi-camera video and egomotion history as inputs, generates Chain-of-Causation (CoC) reasoning traces, and outputs future trajectories (6.4s horizon at 10Hz). Key components include a unicycle kinematic model for action space conversion, CUDA graph acceleration for efficient repeated inference, and robust geometric transformations. While the repository is noted to receive only limited maintenance as newer versions exist, the current implementation demonstrates strong engineering practices with several reusable components.

RATING: 8.3/10 MAINT: maintained DRIFT: low
▸ 5 reusable components found
ACDSLab/MPPI-Generic ★ 315 46 APPLICATION

This repository is a C++/CUDA header-only library implementing Model Predictive Path Integral (MPPI) control, a sampling-based trajectory optimization method for real-time robotic control. It provides multiple controller variants including Vanilla MPPI, Tube-MPPI, Robust-MPPI, and Colored-MPPI, each designed to handle different robustness and noise characteristics. The architecture uses CRTP (Curiously Recurring Template Pattern) to achieve device-side polymorphism without virtual functions, enabling efficient GPU execution. The library includes a broad set of dynamics models (cartpole, double integrator, quadrotor, dubins car, autorally neural network models, racer dubins with elevation and suspension) and corresponding cost functions, along with Gaussian, colored noise, and log-normal sampling distributions. It also integrates DDP and CCM feedback controllers, and provides utilities for neural network inference (LSTM, FNN) and texture-based costmap queries on GPU. Typical use cases are autonomous racing and off-road vehicle control, where the library's GPU acceleration allows thousands of trajectory rollouts to be evaluated in real-time. The codebase is well-structured with extensive tests using Google Test and Google Mock, covering kernel correctness, dynamics, cost functions, and full controller pipelines. It includes real-time control loop abstractions (BasePlant, BufferedPlant) and supports integration with ROS via state interpolation and parameter updates. The library is research-grade, citing Williams et al. 2017 and including implementations of concepts like robust free-energy bounds and colored noise shaping. While the overall architecture is sound and many components are reusable, the codebase shows signs of research-driven growth: some modules contain commented-out code, skipped tests, and conditional compilation flags. Manual CUDA memory management and complex template hierarchies increase the learning curve. Despite this, the library is actively maintained and offers high-quality reusable patterns for GPU-accelerated control, making it a strong reference for MPPI implementations in robotics.

RATING: 8.3/10 MAINT: active DRIFT: low
▸ 3 reusable components found
Adam-CAD/CADAM ★ 5088 635 APPLICATION

CADAM is a production-grade, open-source web application that converts natural language descriptions into fully parametric 3D CAD models. It operates in two primary modes: parametric (generating OpenSCAD code via an AI agent that can iterate with live previews) and creative (producing 3D meshes via external providers like Meshy and Tripo). The application is built with React 19, TypeScript, TanStack Start, Vite, and Tailwind CSS, with a Supabase backend for authentication, database, and file storage. AI integration spans multiple providers (Anthropic, OpenAI, Google, xAI, and others) via the Vercel AI SDK, and the generated OpenSCAD code is compiled in-browser using a vendored WebAssembly build of OpenSCAD. The system includes a token-based billing model, real-time preview updates, parameter editing, and export to STL, OBJ, GLB, and other formats. Although primarily an application, the benchmarks directory serves as a research record of the quality of generated parametric models, covering complex assemblies like a V8 engine and turbofan.

RATING: 8.2/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
Axellwppr/motion_tracking ★ 406 41 APPLICATION

This repository implements a complete reinforcement learning pipeline for whole-body motion tracking on humanoid robots, specifically Unitree G1 and XBot L7. The system uses a teacher-student architecture with Proximal Policy Optimization (PPO) to train policies that track reference motions from retargeted motion capture datasets. It features three training phases: a base training phase, an adaptation phase with domain randomization, and a finetuning phase. The environment is built on MJLab (a MuJoCo wrapper) and includes extensive domain randomization (e.g., motor parameters, body mass, center of mass, joint offsets, external forces, and a window load capacity curriculum for payload-aware training). The codebase is highly modular, with registered MDP components (observations, rewards, terminations, randomizations) and a flexible configuration system using Hydra. It also includes advanced features such as symmetry augmentation, differentiable forward kinematics, and a custom motion dataset pipeline with memory-mapped storage. While primarily a reinforcement learning training framework, it has strong data engineering aspects for processing motion datasets and generating training data for the student encoder. The repository is well-structured for research and sim-to-real transfer, but it is tightly coupled to specific robot assets and dependencies (torch, torchrl, mjlab) with pinned versions that may require adaptation for other environments.

RATING: 8.2/10 MAINT: maintained DRIFT: low
▸ 4 reusable components found

This repository is a curated survey of research papers on World Action Models (WAM), maintained as a living list in a single README.md file. It categorizes 109 papers into three families: Render-and-Decode, Latent-Only, and Video-Generation-Free, with each entry including publication date, title, backbone, substrate, and a one-line summary. The repository serves as a reference resource for researchers in robotics and embodied AI, providing a structured overview of recent advances in WAM methodologies. While it contains no executable code or data processing pipelines, it is actively updated via community contributions through pull requests.

RATING: 8.2/10 REPRO: 8.5/10 MAINT: active DRIFT: low
snape/RVO2-3D ★ 296 66 APPLICATION

RVO2-3D is a C++ library implementing Optimal Reciprocal Collision Avoidance (ORCA) for multi-agent simulation in three-dimensional workspaces. It provides a simulator that manages agents with configurable parameters (radius, max speed, time horizon, etc.) and computes collision-free velocities each time step using a linear programming approach over ORCA half-planes. The library uses a k-d tree for efficient neighbor queries and optionally leverages OpenMP for parallel agent updates. The public API is exposed through the RVOSimulator class, with supporting types Vector3 and Plane. The codebase is written in C++98 for maximum compatibility, is thoroughly documented with Doxygen, and includes a single example (Sphere) that serves as both a demonstration and a test. The repository is well-maintained with CI across multiple platforms and build systems (CMake, Bazel), static analysis, and a quality declaration targeting ROS 2 Quality Level 2.

RATING: 8.1/10 MAINT: active DRIFT: low
▸ 1 reusable components found
hybridgroup/gobot ★ 9454 1064 APPLICATION

Gobot is a Go framework for robotics, physical computing, and the Internet of Things. It provides a consistent hardware abstraction layer (HAL) over dozens of single-board computers (Raspberry Pi, BeagleBone, Intel Edison, Jetson, etc.), microcontrollers (Arduino via Firmata, Digispark), and communication protocols (GPIO, I2C, SPI, BLE, serial, MQTT, NATS, MAVLink). The architecture is modular: platform-specific adaptors implement core interfaces (DigitalPinner, PWMPinner, I2cBusAdaptor, etc.) and are composed from reusable building blocks in the `platforms/adaptors` package. Drivers for sensors, actuators, displays, and robots (Sphero, Parrot drones, DJI Tello, GoPiGo3) are organized by bus type (gpio, i2c, spi, ble, aio, onewire, serial) and share a common lifecycle pattern with event publishing and command registration. A built-in HTTP API server (with optional basic auth and CORS) exposes robot state and commands over REST and Server-Sent Events, and includes an embedded web UI (Robeaux). The framework supports both high-level orchestration via `Robot` and `Manager` and low-level 'metal' usage for direct hardware control. External dependencies include `periph.io` for GPIO, `tinygo.org/x/bluetooth` for BLE, `gocv.io/x/gocv` for computer vision, and `go.bug.st/serial` for serial communication. The codebase is extensively tested with mock filesystem and syscall infrastructure, and uses functional options for configuration throughout.

RATING: 8.0/10 MAINT: maintained DRIFT: medium
▸ 4 reusable components found
karlkurzer/path_planner ★ 1914 571 APPLICATION

A ROS-based C++ implementation of the Hybrid A* path planning algorithm for nonholonomic autonomous vehicles, originally developed as part of a master's thesis at KTH. The system takes a binary occupancy grid (from LIDAR) and start/goal poses, then plans a smooth, drivable path using a combination of continuous-space A* with state discretization in heading, constrained (Dubins/Reeds-Shepp) and unconstrained (2D A*) heuristics, and a final gradient-descent smoother that accounts for obstacle clearance, curvature, and smoothness. It also optionally uses a Voronoi diagram to guide the path away from obstacles. The architecture is modular: a central Planner class manages ROS callbacks and orchestrates the search (Algorithm), collision detection (precomputed lookup tables for vehicle footprint), path tracing, and visualization via RViz. The code is well-documented and has been widely cited in autonomous driving research. While it is tightly coupled to ROS 1 (Noetic) and relies on OMPL for Reeds-Shepp heuristics, the core algorithmic components (lookup-based collision checking, Dubins path, gradient smoother) are self-contained and could be extracted for other projects.

RATING: 8.0/10 MAINT: active DRIFT: low
▸ 3 reusable components found
zju3dv/habitat-gs ★ 308 17 DATA_RESEARCH

This repository is a research fork of Meta's Habitat-Sim, extended with 3D Gaussian Splatting (3DGS) for photo-realistic rendering in embodied AI navigation tasks. It provides a full simulation platform with physics (Bullet), sensors (RGB, depth, semantic, fisheye), navigation meshes, and a CUDA-accelerated Gaussian splatting rasterizer supporting dynamic avatars. The codebase includes training and evaluation pipelines for PointNav, ImageNav, ObjectNav, Vision-Language Navigation (StreamVLN, Uni-NaVid), and dynamic avatar avoidance. It also contains an LLM-driven agent system (HabitatAgent) with a bridge API, MCP server, and TUI for interactive navigation. The repository is hybrid: primarily a research platform for embodied AI experiments, but also includes application-like components such as web tools (navmesh editor, object annotation helper), a real-time Rerun viewer, and a conda packaging system. The core C++ simulator is well-architected with managed object patterns, replay recording, and PBR rendering, while the Python layer provides episode generation, prompt-based agent control, and analytics dashboards. Data assets (GS scenes, avatars, checkpoints) are hosted externally on Hugging Face, and the setup requires multiple conda environments for different tasks.

RATING: 8.0/10 REPRO: 7.0/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
dusty-nv/jetson-containers ★ 4843 846 APPLICATION

This repository is a container build system and runtime for NVIDIA Jetson edge AI devices. It provides a modular, composable framework for building Docker images pre-configured with AI/ML libraries (LLMs, VLMs, robotics, speech, computer vision) optimized for Jetson's ARM64 + CUDA architecture. The system includes a CLI (`jetson-containers`), dependency resolution, multi-stage Docker builds, automated testing, and CI/CD workflow generation. While primarily a build tool, it also ships hundreds of ready-to-use container definitions for popular frameworks like PyTorch, TensorFlow, vLLM, ComfyUI, ROS 2, and Home Assistant. The repository has a hybrid character: the core is an application build system, but many package definitions are research-oriented (e.g., attention kernels, diffusion models, physical AI), reflecting its dual role as both a production deployment tool and an experimentation platform for edge AI.

RATING: 7.9/10 MAINT: active DRIFT: medium
▸ 3 reusable components found
$ loading more...
$ submit: