# artivis/manif

A small C++11 header-only library for Lie theory.

Repository: https://github.com/artivis/manif
Canonical: https://ross.abutalabs.com/products/manif
Homepage: https://artivis.github.io/manif
Language: C++
License: MIT
License Family: permissive
Topics: lie-groups, lie-theory, cpp11, header-only, robotics, state-estimation, slam, computer-vision, geometry, 2d, 3d, c-plus-plus, python3
Last push: 2026-08-05T09:27:07+00:00

## Health v2 (maintenance only)
Score: 66/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 96, release rhythm 8, longevity 100
- inputs: {"age_days": 3061, "days_push": 28, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1811, forks 274 (observed 2026-08-28T04:05:39.542924+00:00)

## What it is
manif is a header-only C++11 library for Lie theory with Python 3 wrappers, providing common Lie groups (SO(2), SE(2), SO(3), SE(3), SE_2(3), SGal(3), and composite bundles) with analytic Jacobians. It is designed for state estimation in robotics applications such as SLAM and visual odometry.

## Use cases
- compute SE(3) transformations with analytic Jacobians for robotics state estimation
- implement an EKF or filter on Lie groups for SLAM
- work with rotations and rigid motions in C++ or Python
- use Lie group math with Ceres solver for optimization
- learn Lie theory for robotics with a practical library
- manipulate composite manifolds as a single Lie group

## When to choose
- you need rigorous Lie group operations with analytic derivatives for estimation or control
- you want a lightweight header-only C++11 dependency with Python bindings
- you work in robotics, SLAM, or computer vision with 2D/3D geometry

## When to avoid
- you need Lie groups beyond those provided and cannot contribute them
- you prefer numerical or automatic differentiation over analytic Jacobians
- you need a non-C++11 or non-Python language binding

## Facets
- artifact type: library
- maturity: active
- function: math, simulation, sdk
- domain: robotics, computer-vision, mathematics
- platform: cpp, python, cross-platform
- tags: lie-theory, lie-groups, header-only, state-estimation, slam, geometry, jacobians, cpp11, algorithms

## Member repositories
- artivis/manif (main) score 66

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:05:39.542924+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T03:21:15.066042+00:00, confidence not recorded.
  - readme: https://github.com/artivis/manif (fetched 2026-08-28T04:05:39.542924+00:00, sha 193332014fda)
  - homepage: https://artivis.github.io/manif (fetched 2026-08-29T10:59:56.262013+00:00, sha 286e937d3198)
- Data as of 2026-08-30T08:39:29.467469+00:00.
