skillfed

jaxlie

Matrix Lie groups in JAX

jaxlie v1.5.0 96.2K downloads/30d#13,225 on PyPI338
Permissive license MIT AGING released

What it is and what it does

jaxlie is a JAX library for working with matrix Lie groups commonly used in rigid body kinematics and transformations. It provides high-level dataclass implementations of SO2 (2D rotations), SE2 (2D rigid transforms), SO3 (3D rotations), and SE3 (3D rigid transforms), each parameterized in a way suitable for optimization and differentiation. Every group supports forward and reverse-mode autodiff-friendly operations including exp, log, matrix conversion, composition, and inversion.

The library is designed for computer vision and robotics workflows where you need to optimize over transformation manifolds or compose transformations in differentiable code. It integrates with JAX's function transformations (vmap, jit, grad) and supports broadcasting, pytree flattening, and serialization via flax. Taylor approximations handle numerical stability near singularities, and utilities like uniform random sampling and Euler angle conversion are included for SO3.

Use it for:

  • Optimize camera poses or object transforms in 3D vision pipelines using manifold-aware gradient descent.
  • Compose and apply rigid body transformations in robotics simulation or control code with automatic differentiation.
  • Batch-process rotations and transforms across multiple frames or trajectories using vmap.
  • Convert between rotation representations (quaternions, matrices, Euler angles) while maintaining differentiability.
  • Implement factor graph optimization for SLAM or pose estimation with Lie group constraints.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

jaxlie implements Lie groups (SO2, SE2, SO3, SE3) for rigid body transformations in JAX, providing differentiable operations like exp, log, and matrix conversions for computer vision and robotics applications.

Yes, if you are building JAX-based computer vision or robotics code that requires differentiable rigid body transformations. The library is well-designed for manifold optimization and integrates cleanly with JAX's ecosystem. The aging maintenance status (477 days since last release) is not a blocker—the package is stable and the repo remains active—but check whether recent JAX API changes affect your use case. No known vulnerabilities.

Install

jaxlie on PyPI

pip

pip install jaxlie

uv

uv add jaxlie

poetry

poetry add jaxlie

Installing jaxlie

Before you install

Low friction: pure Python wheel with five runtime dependencies (jax, numpy, jax_dataclasses, typing_extensions, tyro). Maintenance status is aging—last commit 477 days ago—but the repo remains active and the package has been stable since its 2021 release.

License in practice

MIT license (permissive) places no restrictions on use, modification, or distribution in proprietary or open-source contexts.

Quickstart

pip install jaxlie

import jaxlie

# Create a 3D rotation from quaternion (wxyz)
rotation = jaxlie.SO3(jnp.array([1.0, 0.0, 0.0, 0.0]))

# Apply rotation to a 3D point
point = jnp.array([1.0, 0.0, 0.0])
rotated = rotation.apply(point)

Requires JAX installed; jaxlie requires Python >=3.8.

Verify before relying

  • Whether the package's AD support covers all use cases or has known limitations in reverse-mode differentiation.
  • Performance characteristics and scalability when used with large batches or vmap over many group elements.
  • Stability and numerical accuracy of Taylor approximations near singularities in practice.

Package facts

License MIT (permissive)
Python support supports the current Python release (>=3.8)
Install friction low — pure-Python wheel
Runtime dependencies 5 — jax, jax_dataclasses, numpy, typing_extensions, tyro
Maintenance aging — 477 days since the last release
Last repo commit
First released
Downloads 96,173/month — #13,225 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: jaxlie-1.5.0-py3-none-any.whl

License :: OSI Approved :: MIT LicenseOperating System :: OS IndependentProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9

Tags

lie groups JAXrigid body transformationsSO3 SE3 rotationsdifferentiable manifold optimizationquaternion rotation JAXcomputer vision robotics transformsmanifold exponential map
lie-groupsroboticsdifferentiable-geometry

More Mathematics packages