Metadata-Version: 2.4
Name: srb
Version: 0.0.5
Summary: Space Robotics Bench
Project-URL: Repository, https://github.com/AndrejOrsula/space_robotics_bench
Project-URL: Documentation, https://AndrejOrsula.github.io/space_robotics_bench
Author-email: Andrej Orsula <orsula.andrej@gmail.com>
Maintainer-email: Andrej Orsula <orsula.andrej@gmail.com>
License: MIT OR Apache-2.0
License-File: LICENSE-APACHE
License-File: LICENSE-MIT
Keywords: benchmark,robotics,simulation,space
Classifier: Framework :: Robot Framework
Classifier: License :: OSI Approved :: Apache Software License
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python
Classifier: Programming Language :: Rust
Requires-Python: ==3.10.*
Requires-Dist: gymnasium~=0.29
Requires-Dist: orjson~=3.10
Requires-Dist: oxidasim~=0.1
Requires-Dist: pydantic~=2.0
Requires-Dist: pytest-cov>=6.2.1
Requires-Dist: simforge[assets]~=0.2
Provides-Extra: algo
Requires-Dist: jax<0.5.1,~=0.4; extra == 'algo'
Requires-Dist: sb3-contrib~=2.4; extra == 'algo'
Requires-Dist: sbx-rl~=0.19; extra == 'algo'
Requires-Dist: skrl~=1.0; extra == 'algo'
Requires-Dist: stable-baselines3~=2.4; extra == 'algo'
Requires-Dist: tf-keras~=2.0; extra == 'algo'
Provides-Extra: all
Requires-Dist: argcomplete~=3.0; extra == 'all'
Requires-Dist: hydra-core~=1.0; extra == 'all'
Requires-Dist: jax<0.5.1,~=0.4; extra == 'all'
Requires-Dist: lark~=1.0; extra == 'all'
Requires-Dist: logfire~=3.0; extra == 'all'
Requires-Dist: mypy~=1.0; extra == 'all'
Requires-Dist: omegaconf~=2.0; extra == 'all'
Requires-Dist: ptpython~=3.0; extra == 'all'
Requires-Dist: pyspacemouse~=1.0; extra == 'all'
Requires-Dist: pytest-order~=1.0; extra == 'all'
Requires-Dist: pytest-sugar~=1.0; extra == 'all'
Requires-Dist: pytest~=8.0; extra == 'all'
Requires-Dist: rich~=13.0; extra == 'all'
Requires-Dist: sb3-contrib~=2.4; extra == 'all'
Requires-Dist: sbx-rl~=0.19; extra == 'all'
Requires-Dist: seaborn~=0.13; extra == 'all'
Requires-Dist: skrl~=1.0; extra == 'all'
Requires-Dist: stable-baselines3~=2.4; extra == 'all'
Requires-Dist: tensorboard~=2.0; extra == 'all'
Requires-Dist: tensorflow~=2.0; extra == 'all'
Requires-Dist: tf-keras~=2.0; extra == 'all'
Requires-Dist: types-psutil~=6.0; extra == 'all'
Requires-Dist: types-pyyaml~=6.0; extra == 'all'
Requires-Dist: types-toml~=0.10; extra == 'all'
Requires-Dist: wandb~=0.19; extra == 'all'
Provides-Extra: cli
Requires-Dist: argcomplete~=3.0; extra == 'cli'
Requires-Dist: hydra-core~=1.0; extra == 'cli'
Requires-Dist: omegaconf~=2.0; extra == 'cli'
Requires-Dist: ptpython~=3.0; extra == 'cli'
Requires-Dist: rich~=13.0; extra == 'cli'
Provides-Extra: dev
Requires-Dist: lark~=1.0; extra == 'dev'
Requires-Dist: logfire~=3.0; extra == 'dev'
Requires-Dist: mypy~=1.0; extra == 'dev'
Requires-Dist: pytest-order~=1.0; extra == 'dev'
Requires-Dist: pytest-sugar~=1.0; extra == 'dev'
Requires-Dist: pytest~=8.0; extra == 'dev'
Requires-Dist: rich~=13.0; extra == 'dev'
Requires-Dist: seaborn~=0.13; extra == 'dev'
Requires-Dist: types-psutil~=6.0; extra == 'dev'
Requires-Dist: types-pyyaml~=6.0; extra == 'dev'
Requires-Dist: types-toml~=0.10; extra == 'dev'
Provides-Extra: dreamer
Requires-Dist: jax<0.5.1,~=0.4; extra == 'dreamer'
Provides-Extra: hw
Requires-Dist: pyspacemouse~=1.0; extra == 'hw'
Provides-Extra: logging
Requires-Dist: tensorboard~=2.0; extra == 'logging'
Requires-Dist: tensorflow~=2.0; extra == 'logging'
Requires-Dist: wandb~=0.19; extra == 'logging'
Provides-Extra: plots
Requires-Dist: seaborn~=0.13; extra == 'plots'
Provides-Extra: repl
Requires-Dist: ptpython~=3.0; extra == 'repl'
Provides-Extra: rich
Requires-Dist: rich~=13.0; extra == 'rich'
Provides-Extra: robomimic
Provides-Extra: sb3
Requires-Dist: sb3-contrib~=2.4; extra == 'sb3'
Requires-Dist: stable-baselines3~=2.4; extra == 'sb3'
Provides-Extra: sbx
Requires-Dist: sbx-rl~=0.19; extra == 'sbx'
Requires-Dist: tf-keras~=2.0; extra == 'sbx'
Provides-Extra: skrl
Requires-Dist: skrl~=1.0; extra == 'skrl'
Provides-Extra: spacemouse
Requires-Dist: pyspacemouse~=1.0; extra == 'spacemouse'
Provides-Extra: tensorboard
Requires-Dist: tensorboard~=2.0; extra == 'tensorboard'
Requires-Dist: tensorflow~=2.0; extra == 'tensorboard'
Provides-Extra: test
Requires-Dist: lark~=1.0; extra == 'test'
Requires-Dist: pytest-order~=1.0; extra == 'test'
Requires-Dist: pytest-sugar~=1.0; extra == 'test'
Requires-Dist: pytest~=8.0; extra == 'test'
Provides-Extra: tracing
Requires-Dist: logfire~=3.0; extra == 'tracing'
Requires-Dist: rich~=13.0; extra == 'tracing'
Provides-Extra: typing
Requires-Dist: mypy~=1.0; extra == 'typing'
Requires-Dist: types-psutil~=6.0; extra == 'typing'
Requires-Dist: types-pyyaml~=6.0; extra == 'typing'
Requires-Dist: types-toml~=0.10; extra == 'typing'
Provides-Extra: wandb
Requires-Dist: wandb~=0.19; extra == 'wandb'
Description-Content-Type: text/markdown

<h1 align="center">Space Robotics Bench</h1>

<p align="center">
  <a href="https://AndrejOrsula.github.io/space_robotics_bench"><img alt="" src="https://github.com/user-attachments/assets/049289be-0c99-497b-be37-c4975d924524" width="100%"></a>
</p>

[![Discord](https://img.shields.io/badge/Discord-invite-5865F2?logo=discord)](https://discord.gg/p9gZAPWa65)
[![Docs](https://img.shields.io/badge/docs-online-blue?logo=markdown)](https://AndrejOrsula.github.io/space_robotics_bench)
[![Rust](https://github.com/AndrejOrsula/space_robotics_bench/actions/workflows/rust.yml/badge.svg)](https://github.com/AndrejOrsula/space_robotics_bench/actions/workflows/rust.yml)
[![Python](https://github.com/AndrejOrsula/space_robotics_bench/actions/workflows/python.yml/badge.svg)](https://github.com/AndrejOrsula/space_robotics_bench/actions/workflows/python.yml)
[![Docker](https://github.com/AndrejOrsula/space_robotics_bench/actions/workflows/docker.yml/badge.svg)](https://github.com/AndrejOrsula/space_robotics_bench/actions/workflows/docker.yml)
[![Docs](https://github.com/AndrejOrsula/space_robotics_bench/actions/workflows/docs.yml/badge.svg)](https://github.com/AndrejOrsula/space_robotics_bench/actions/workflows/docs.yml)

<!-- [![Codecov](https://codecov.io/gh/AndrejOrsula/space_robotics_bench/graph/badge.svg)](https://codecov.io/gh/AndrejOrsula/space_robotics_bench) -->

**Space Robotics Bench (SRB)** is a comprehensive collection of environments and tasks for robotics research in the challenging domain of space. It provides a unified framework for developing and validating autonomous systems under diverse extraterrestrial scenarios. At the same time, its design is flexible and extensible to accommodate a variety of development workflows and research directions beyond Earth.

## Key Features

- **Parallelized Simulation**: Highly parallelized simulation instances for accelerated workflows
- **Procedural Generation**: On-demand generation of diverse simulation assets and scenes
- **Domain Randomization**: Extensive randomization for robustness and generalization
- **Gymnasium API**: Compatibility with standard API and frameworks for robot learning
- **ROS 2 Interface**: Seamless interoperability with ROS 2 and Space ROS ecosystems
- **Abstract Architecture**: Flexibility across different robots and space domains

## Documentation

SRB documentation with detailed installation instructions, usage guides, and development resources is available [online](https://AndrejOrsula.github.io/space_robotics_bench).

<div align="right">
<a href="https://AndrejOrsula.github.io/space_robotics_bench"><img alt="Documentation" src="https://github.com/user-attachments/assets/c8663796-3ef1-4ff7-860b-cf8080d0a07a" width="96" height="96"></a>
</div>

## License

This project is dual-licensed under either the [MIT](LICENSE-MIT) or [Apache 2.0](LICENSE-APACHE) licenses.

All assets created by contributors of this repository and those generated from [SimForge](https://github.com/AndrejOrsula/simforge) procedural pipelines are licensed under the [CC0 1.0 Universal](https://github.com/AndrejOrsula/srb_assets/blob/main/LICENSE-CC0) license. Resources from third-party sources are listed under [attributions](https://andrejorsula.github.io/space_robotics_bench/misc/attributions.html).

[![CC0 1.0 Universal](https://licensebuttons.net/l/zero/1.0/88x31.png)](https://creativecommons.org/publicdomain/zero/1.0)
