A pure-Python library for robot kinematics and dynamics built on JAX, with JIT compilation and autodiff for fast controller design.
AVSLab/basilisk
A Python and C framework for simulating spacecraft dynamics, guidance, navigation and control in astrodynamics missions.
Open-source alternative to:STK
- Stars
- 418
- Forks
- 146
- Open issues
- 9
- Last commit
- 21 hours ago
What is it?
Basilisk is a simulation framework for astrodynamics, used to model spacecraft orbits, attitude dynamics, and the guidance, navigation and control (GNC) software that runs on them. Simulations are assembled in Python from modules written in C or C++, so flight-software algorithms can be tested against a physics model before deployment.
It is distributed as a prebuilt wheel on PyPI (`pip install "bsk[all]"`) with optional component packages, and can also be built from source on macOS, Linux and Windows when external C++ modules are needed. Container images for linux/amd64 and linux/arm64 are published to GHCR. Example scenarios such as `scenarioBasicOrbit.py` are included as starting points, and an optional standalone 3D visualizer called Vizard is available.
Questions are handled through the project's GitHub Discussions.
Key features
- 01Simulates spacecraft orbital and attitude dynamics with Python-assembled scenarios.
- 02Core modules are written in C/C++ for flight-software style algorithms.
- 03Installable from PyPI as a prebuilt wheel, or built from source.
- 04Publishes multi-architecture container images to GHCR.
- 05Includes example scripts and an optional standalone 3D visualizer, Vizard.
Use cases
- Prototyping guidance, navigation and control algorithms for a spacecraft before flight.
- Simulating orbit propagation and attitude behavior for mission analysis.
- Testing flight-software modules against a physics model with custom C++ extensions.
Quick start
- 1
Install the full Basilisk package from PyPI
pip install "bsk[all]" - 2
Download the example scripts to a local folder
bskExamples - 3
Run the basic orbit tutorial scenario
python scenarioBasicOrbit.py
Things to know
- Building from source is needed for external C++ modules and involves platform-specific setup.
In collections
Topics
FAQ
- What is basilisk?
- A Python and C framework for simulating spacecraft dynamics, guidance, navigation and control in astrodynamics missions. Basilisk is a simulation framework for astrodynamics, used to model spacecraft orbits, attitude dynamics, and the guidance, navigation and control (GNC) software that runs on them. Simulations are assembled in Python from modules written in C or C++, so flight-software algorithms can be tested against a physics model before deployment.
- Is basilisk free to use? What license does it have?
- basilisk is open source under the ISC license. Check the license terms before using it in commercial products.
- Is basilisk still maintained?
- Actively maintained. The last commit to basilisk was on Nov 6, 2026.
- What can I use basilisk for?
- Prototyping guidance, navigation and control algorithms for a spacecraft before flight. Simulating orbit propagation and attitude behavior for mission analysis. Testing flight-software modules against a physics model with custom C++ extensions.
- How do I install basilisk?
- Install the full Basilisk package from PyPI: pip install "bsk[all]" Download the example scripts to a local folder: bskExamples Run the basic orbit tutorial scenario: python scenarioBasicOrbit.py
- Where can I get basilisk?
- The source code and installation instructions are on GitHub: https://github.com/AVSLab/basilisk
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
Python package for building Gymnasium reinforcement-learning environments for spacecraft tasking and planning, built on the Basilisk simulator.
A Python code collection and textbook of robotics algorithms covering localization, mapping, SLAM, path planning and control.
PyBullet-based Gymnasium environments for training single and multi-agent reinforcement learning controllers for quadcopters.
A Python multirotor UAV simulator with lumped-parameter aerodynamics, built for teaching and research in estimation, planning, and control.
A lightweight, Python-based robot simulator for navigation, control, and learning, configured through YAML files.