# pinocchio

> A fast and flexible implementation of Rigid Body Dynamics algorithms and their analytical derivatives

- **URL**: https://www.freshcrate.ai/projects/pinocchio
- **Author**: stack-of-tasks
- **Category**: Uncategorized
- **Latest version**: `v4.0.0` (2026-04-13)
- **License**: BSD-2-Clause
- **Source**: https://github.com/stack-of-tasks/pinocchio
- **Homepage**: http://stack-of-tasks.github.io/pinocchio/
- **Language**: C++
- **GitHub**: 3,281 stars, 529 forks
- **Registry**: github
- **Tags**: `analytical-derivatives`, `automatic-differentiation`, `c++`, `c-plus-plus`, `casadi`, `code-generation`, `conda`, `cppad`, `dynamics`

## Description

A fast and flexible implementation of Rigid Body Dynamics algorithms and their analytical derivatives

## Recent releases

| Version | Date | Urgency | Changes |
| --- | --- | --- | --- |
| `v4.0.0` | 2026-04-13 | High | ## What's Changed   ### Highlights  - `lcaba` algorithm:   - Compute forward dynamics for constrained system with closed kinematics loops   - [Python example here](./examples/simulation-lcaba.py) - New constraint API:   - `PointContactConstraintModelTpl`, `PointAnchorConstraintModelTpl`, `FrameAnchorConstraintModelTpl`, `JointLimitConstraintModelTpl` and `JointFrictionConstraintModelTpl` constraint models   - Each constraint model is associated to its own constraint data   - Variants ` |
| `v3.9.0` | 2026-01-05 | Low | ## What's Changed  ### Added - Add pixi-build support ([#2802](https://github.com/stack-of-tasks/pinocchio/pull/2802)) - Python: add overload of `BaseVisualizer::play()` to `VisualizerPythonVisitor` ([#2796](https://github.com/stack-of-tasks/pinocchio/pull/2796)) - ROS: added jrl_cmakemodules dependency ([#2789](https://github.com/stack-of-tasks/pinocchio/pull/2789)) - Add docker images ([#2776](https://github.com/stack-of-tasks/pinocchio/pull/2776)) - Add names to joints that are inside |
| `v3.8.0` | 2025-09-17 | Low | ## What's Changed  ### Added - Continuous joints can now be parsed as mimic from a urdf file ([#2756](https://github.com/stack-of-tasks/pinocchio/pull/2756)) - Beta version of Viser visualizer ([#2718](https://github.com/stack-of-tasks/pinocchio/pull/2718)) - Add `pinocchio::graph::ModelGraph` class   - Simple API to build a model   - Manage joint offset   - Create a `pinocchio::Model` with any frame as root frame   - Create a `pinocchio::Model` with any joint as root joint   - Reliabl |
| `v3.7.0` | 2025-05-21 | Low | ## What's Changed  ### Changed - Change the default branch to `devel` ([#2666](https://github.com/stack-of-tasks/pinocchio/pull/2666)) - Implement `captureImage` for Panda3D visualizer for video recording ([#2668](https://github.com/stack-of-tasks/pinocchio/pull/2668)) - Drop Ubuntu 20.04 support ([#2680](https://github.com/stack-of-tasks/pinocchio/pull/2680))  **Full Changelog**: https://github.com/stack-of-tasks/pinocchio/compare/v3.6.0...v3.7.0 |
| `v3.6.0` | 2025-04-28 | Low | ## What's Changed  ### Fixed - Fix getters for models and data in `VisualizerPythonVisitor` ([#2647](https://github.com/stack-of-tasks/pinocchio/pull/2647)) - Fix `pinocchio::cholesky::Mv` build with `CppAd` scalar ([#2659](https://github.com/stack-of-tasks/pinocchio/pull/2659)) - Fix `pinocchio::contactABA` build with `casadi` scalar ([#2659](https://github.com/stack-of-tasks/pinocchio/pull/2659))  ### Added - Add explicit template instantiation for constraint algorithms for `casadi`, ` |
| `v3.5.0` | 2025-04-02 | Low | ## What's Changed  ### Added - Added C++ visualization API, `pinocchio::pinocchio_visualizers` target ([#2574](https://github.com/stack-of-tasks/pinocchio/pull/2574)) - Added forward declaration for class `SE3Tpl`, and typedef `pinocchio::context::SE3` ([#2574](https://github.com/stack-of-tasks/pinocchio/pull/2574)) - Add macros PINOCCHIO_COMMON_TYPEDEF and PINOCCHIO_OPTIONS_DEFAULT ([#2574](https://github.com/stack-of-tasks/pinocchio/pull/2574)) - Add mimic joint support to the following |
| `v3.4.0` | 2025-02-12 | Low | ## What's Changed  ### Added - Add parsing meshes with vertices for MJCF format ([#2537](https://github.com/stack-of-tasks/pinocchio/pull/2537))  ### Fixed - Fix mjcf Euler angle parsing: use xyz as a default value for eulerseq compiler option ([#2526](https://github.com/stack-of-tasks/pinocchio/pull/2526)) - Fix variable naming in Python ([#2530](https://github.com/stack-of-tasks/pinocchio/pull/2530)) - Fix aba explicit template instantiation ([#2541](https://github.com/stack-of-tasks/p |
| `v3.3.1` | 2024-12-13 | Low | ## What's Changed  ### Added - Add `pinocchio_python_parser` target ([#2475](https://github.com/stack-of-tasks/pinocchio/pull/2475))  ### Fixed - Fix mjcf parsing of armature and of the default tag in models ([#2477](https://github.com/stack-of-tasks/pinocchio/pull/2477)) - Fix undefined behavior when using the site attribute in mjcf ([#2477](https://github.com/stack-of-tasks/pinocchio/pull/2477)) - Fix the type of image paths when loading textures in the meshcat visualizer ([#2478](http |
| `v3.3.0` | 2024-11-06 | Low | ## What's Changed  ### Added  - Default visualizer can be changed with `PINOCCHIO_VIEWER` environment variable ([#2419](https://github.com/stack-of-tasks/pinocchio/pull/2419)) - Add more Python and C++ examples related to inverse kinematics with 3d tasks ([#2428](https://github.com/stack-of-tasks/pinocchio/pull/2428)) - Add parsing of equality/connect tag for closed-loop chains for MJCF format ([#2413](https://github.com/stack-of-tasks/pinocchio/pull/2413)) - Add compatibility with NumPy |
| `v3.2.0` | 2024-08-27 | Low | ## What's Changed  ### Fixed - Append pinocchio optional libraries into pkg-config file ([#2322](https://github.com/stack-of-tasks/pinocchio/pull/2322)) - Fixed support of DAE meshes with MeshCat ([#2331](https://github.com/stack-of-tasks/pinocchio/pull/2331)) - Fixed pointer casts in urdf parser ([#2339](https://github.com/stack-of-tasks/pinocchio/pull/2339)) - Remove CMake CMP0167 warnings ([#2347](https://github.com/stack-of-tasks/pinocchio/pull/2347)) - Fixed urdfdom in ROS packaging |

## Citation

- HTML: https://www.freshcrate.ai/projects/pinocchio
- Markdown: https://www.freshcrate.ai/projects/pinocchio.md
- Dependencies JSON: https://www.freshcrate.ai/api/projects/pinocchio/deps

_Generated by freshcrate.ai. Indexes github releases for AI-agent ecosystem packages._
