Releases: NuclearVenom/BulletLab
Release list
BulletLab v0.2.1
This release focuses on making the ** Console** significantly more powerful, extensible, and enjoyable to use. It introduces a built-in command framework, enables users to easily create their own custom commands, refines the console experience, and further improves the internal architecture while maintaining full backward compatibility.
Highlights
BulletLab Console
- Introduced a modular built-in command system for faster robotics experimentation
- Added several native console commands for common simulation and robot operations
- Commands are now organized into a dedicated framework instead of being embedded throughout the codebase
- Improved the overall console workflow for interactive testing and rapid prototyping
Custom Commands
- Introduced an official framework for creating custom console commands
- Users can add new commands with minimal boilerplate by simply creating Python command modules
- Custom commands integrate seamlessly with the existing console and behave exactly like built-in commands
- Designed the architecture to be clean, maintainable, and easily extensible for future community contributions
Console Experience
- Refined the command-line interface with a cleaner and more professional appearance
- Added clearer status messages and announcements during command execution
- Improved progress reporting and visual feedback throughout console operations
- Enhanced usability while preserving the lightweight and responsive nature of the console
Documentation
- Added comprehensive documentation for the new console architecture
- Introduced guides for developing custom commands
- Expanded the Cookbook with practical examples for both built-in and user-defined commands
- Updated API documentation and examples to reflect the new command framework
Project Improvements
- Refined the internal command architecture for better maintainability
- Improved code organization by separating console functionality into dedicated modules
- Removed redundant implementation and simplified the command registration process
- Improved API consistency, stability, and overall developer experience
- Continued polishing the project for a more professional open-source release
About BulletLab
BulletLab is a robotics experimentation framework built on PyBullet that transforms robots into intuitive Python objects while providing modern tooling for simulation, visualization, telemetry, and robotics experimentation.
Its official package registry, BulletLab Arsenal, provides curated and verified robotics assets—including robots, worlds, sensors, controllers, datasets, and benchmarks—that can be installed or loaded directly from within BulletLab.
Installation
pip install --upgrade bulletlabLinks
Documentation: https://nuclearvenom.github.io/BulletLab/
Repository: https://github.com/NuclearVenom/BulletLab
BulletLab Arsenal: https://github.com/NuclearVenom/BulletLab-Arsenal
BulletLab v0.2.0
This release introduces the first official integration between BulletLab and BulletLab Arsenal, making verified robotics assets installable and directly loadable from the official registry while significantly improving the project's architecture, documentation, and overall developer experience.
Highlights
BulletLab Arsenal Integration
- Introduced
Robot.install()for permanently installing verified robot packages from BulletLab Arsenal - Extended
Robot.load()to support direct loading from Arsenal using the new URI format:
Robot.load("arsenal:reference_bot")
Robot.load("arsenal:unitree_g1/g1_29dof")- Added automatic temporary caching for Arsenal-loaded assets with session-based cleanup
- Preserved full backward compatibility with existing local file loading
Package Management
- Added support for loading default robot models or explicitly selecting models within a package
- Implemented automatic dependency resolution for URDFs and required mesh assets
- Added configurable installation locations for permanent package downloads
- Designed the infrastructure for future support of Worlds, Sensors, Controllers, Datasets and Benchmarks
Documentation
- Introduced comprehensive documentation for BulletLab Arsenal and its role within the BulletLab ecosystem
- Updated the README to present Arsenal as the official package registry for BulletLab
- Added installation and loading examples covering both local and Arsenal-based workflows
- Improved project navigation, examples, API documentation, and user guides
Project Improvements
- Performed a repository-wide audit of the codebase
- Removed obsolete code, outdated documentation, and inconsistencies
- Improved API consistency and internal architecture
- Refined error handling and overall code quality
- Polished the project for a more professional open-source release
About BulletLab
BulletLab is a robotics experimentation framework built on PyBullet that transforms robots into intuitive Python objects while providing modern tooling for simulation, visualization, telemetry, and robotics experimentation.
Its official package registry, BulletLab Arsenal, provides curated and verified robotics assets—including robots, worlds, sensors, controllers, datasets, and benchmarks—that can be installed or loaded directly from within BulletLab.
Installation
pip install --upgrade bulletlabLinks
Documentation: https://nuclearvenom.github.io/BulletLab/
Repository: https://github.com/NuclearVenom/BulletLab
BulletLab Arsenal: https://github.com/NuclearVenom/BulletLab-Arsenal
BulletLab v0.1.5
This release focuses on establishing BulletLab as a mature open-source project by introducing repository governance, contributor guidelines, software citation support, and long-term project planning.
Highlights
Community & Open Source
- Added a comprehensive Contributing Guide with development setup, coding standards, pull request workflow, and documentation guidelines
- Introduced a Code of Conduct to foster a welcoming and collaborative community
- Added a Support Guide describing where to ask questions, report bugs, and request new features
Research & Citation
- Added an official CITATION.cff file
- Enabled GitHub's "Cite this repository" feature for academic software citation
- Improved software discoverability and reproducibility for research projects
Project Governance
- Introduced a Security Policy outlining responsible vulnerability disclosure procedures
- Added a long-term Roadmap documenting the future direction and planned milestones of BulletLab
- Established community health files following GitHub best practices
Documentation
- Updated the README with links to all community resources
- Improved project organization and repository navigation
- Refined the repository structure for contributors and new users
About BulletLab
BulletLab is a robotics experimentation framework built on PyBullet that transforms robots into intuitive Python objects while providing modern ImGui-based controls, telemetry, visualization, and reinforcement learning workflows.
Installation
pip install --upgrade bulletlabLinks
Documentation: https://nuclearvenom.github.io/BulletLab/
Repository: https://github.com/NuclearVenom/BulletLab/
BulletLab v0.1.4
This release closes major PyBullet physics gaps, introducing comprehensive wrappers for terrain generation, external forces, and runtime dynamics to significantly reduce the need for raw PyBullet C-API calls.
Highlights
Terrain & Environment Construction
- Added robust
Worldmethods for primitive obstacles (create_box,create_sphere,create_capsule) - Introduced
World.load_heightfieldfor generating procedural terrain from flat lists or 2D numpy arrays - Added
World.scatter_obstaclesfor rapidly populating scenes with random hazards - Added
World.remove_bodyfor precise runtime environment manipulation
Physics Parameters & Dynamics
- Introduced
Robot.apply_forceandRobot.apply_torquefor applying continuous external forces (e.g., drone thrust, wind drag) natively - Added
Robot.set_dynamicsto seamlessly alter mass, friction, restitution, and damping of any link at runtime
Robot Loading Improvements
- Introduced an intuitive
tiltparameter toRobot.load()using an axis-angle shorthand (e.g.,tilt=((0, 1, 0), 30)) - Eliminates the need for manual quaternion math when setting initial spawn orientations
- Tilts compose safely on top of existing base orientations
Developer Experience & Documentation
- Re-exported essential math utilities directly from the package root (
from bulletlab import euler_to_quaternion, etc.) - Completely refactored complex examples (
04_drone_parameter_tuning.py,06_irregular_terrain.py) to demonstrate pure BulletLab abstractions without importing PyBullet - Added a comprehensive new
World Guideto the documentation - Expanded the
Cookbookwith advanced physics and terrain generation recipes
About BulletLab
BulletLab is a robotics experimentation framework built on PyBullet that transforms robots into intuitive Python objects while providing modern ImGui-based controls, telemetry, visualization, and reinforcement learning workflows.
Installation
pip install --upgrade bulletlabLinks
Documentation: https://nuclearvenom.github.io/BulletLab/
Repository: https://github.com/NuclearVenom/BulletLab
BulletLab v0.1.3
This release introduces dynamic camera tracking modes, improves the interactive development workflow, and expands resources for AI-assisted robotics development.
Highlights
Dynamic Camera System
- Added a new dynamic camera mode with three tracking variants
- Improved robot observation and scene navigation during simulation
- Enables more intuitive monitoring of robot behavior and experiments
Console & Scripting Improvements
- Fixed issues in the integrated console panel
- Improved real-time Python script execution and control
- Enhanced interactive simulation workflows for rapid experimentation
AI & LLM Optimization
- Expanded support for AI-assisted development workflows
- Added practical code snippets for common robotics tasks
- Introduced a growing cookbook of examples and usage patterns
- Improved discoverability of framework features for coding agents and AI assistants
Developer Experience
- Streamlined experimentation workflows
- Improved documentation structure and accessibility
- Continued refinement of the BulletLab development ecosystem
About BulletLab
BulletLab is a robotics experimentation framework built on PyBullet that transforms robots into intuitive Python objects while providing modern ImGui-based controls, telemetry, visualization, and reinforcement learning workflows.
Installation
pip install --upgrade bulletlabLinks
Documentation: https://nuclearvenom.github.io/BulletLab/
Repository: https://github.com/NuclearVenom/BulletLab
BulletLab v0.1.2
This release introduces the official BulletLab logo and visual identity, marking an important milestone in the project's evolution from an experimental framework to a recognizable robotics development platform.
Highlights
Official BulletLab Logo
- Introduced the official BulletLab logo across the project
- Updated documentation branding and visual identity
- Improved project presentation and consistency
Documentation Improvements
- Refined MkDocs configuration
- Updated project metadata and repository information
- Improved overall documentation experience
Package & Project Updates
- Updated PyPI package metadata
- General bug fixes and quality-of-life improvements
- Continued preparation for future framework expansion
About BulletLab
BulletLab is a robotics experimentation framework built on PyBullet that transforms robots into intuitive Python objects while providing modern ImGui-based controls, telemetry, visualization, and reinforcement learning workflows.
Installation
pip install --upgrade bulletlabLinks
Documentation: https://nuclearvenom.github.io/BulletLab/
Repository: https://github.com/NuclearVenom/BulletLab
BulletLab v0.1.1
The first post-release update for BulletLab, focused on improving stability, package quality, and example coverage.
Highlights
Bug Fixes
- Fixed multiple framework bugs discovered after the initial public release
- Improved overall reliability and consistency across the API
Joint & Reset System Improvements
- Fixed reset-related issues affecting robot state initialization
- Improved robot reset behavior and simulation reproducibility
Package Metadata Improvements
- Refined PyPI package metadata
- Improved package distribution and installation experience
- Updated project information and package configuration
New Example
- Added Example 06: Husky Robot in Irregular Terrain
- Demonstrates BulletLab's ability to work with mobile robots in challenging environments
- Provides a foundation for navigation, autonomy, and reinforcement learning experiments
About BulletLab
BulletLab is a robotics experimentation framework built on PyBullet that transforms robots into intuitive Python objects while providing modern ImGui-based controls, telemetry, visualization, and reinforcement learning workflows.
Installation
pip install --upgrade bulletlab
Links
Documentation: https://nuclearvenom.github.io/BulletLab/
Repository: https://github.com/NuclearVenom/BulletLab
BulletLab v0.1.0
First public release of BulletLab.
BulletLab is a robotics experimentation framework built on PyBullet that transforms robots into intuitive Python objects while providing modern tooling for simulation, visualization, telemetry, and reinforcement learning workflows.
Initial Features
Object-Oriented Robot API
- Robots represented as structured Python objects
- Named joints and links instead of raw PyBullet IDs
- Simplified robot interaction and state access
Joint System
- Joint discovery and enumeration
- Position, velocity, and torque control
- Runtime joint inspection and manipulation
Link System
- Link discovery and enumeration
- Dynamic property access
- Runtime modification of physical parameters
Telemetry System
- Real-time telemetry channels
- History recording and data collection
- Structured experiment monitoring
ImGui-Based User Interface
- Modern control panels separated from PyBullet visualization
- Interactive simulation controls
- Extensible UI architecture
Experimentation Tools
- Data logging utilities
- CSV export support
- Foundation for robotics research workflows
Documentation
- Initial MkDocs documentation site
- Installation and API reference guides
- Getting-started examples
Vision
BulletLab aims to provide a higher-level robotics experimentation environment on top of PyBullet, enabling rapid prototyping, testing, visualization, and reinforcement learning research through a clean Python-first interface.