mirror of
https://github.com/ZGCA-Forge/MsgCenterPy.git
synced 2026-03-24 05:48:23 +00:00
37010bdeb14bc6fa4c3fcfcb65af46152aa4b304
- Removed .bumpversion.cfg and integrated version management into pyproject.toml. - Updated pre-commit hooks and dependencies for code formatting, linting, and type checking. - Added new functionality to JSONSchemaMessageInstance for generating default values from JSON schema. - Enhanced test coverage for the new default value generation feature.
MsgCenterPy
MsgCenterPy is a multi-format message conversion system based on a unified instance manager architecture, supporting seamless conversion between ROS2, Pydantic, Dataclass, JSON, Dict, YAML, and JSON Schema.
Supported Formats
| Format | Read | Write | JSON Schema | Type Constraints |
|---|---|---|---|---|
| ROS2 | ✅ | ✅ | ✅ | ✅ |
| JSON Schema | ✅ | ✅ | ✅ | ✅ |
| Pydantic | 🚧 | 🚧 | 🚧 | 🚧 |
| Dataclass | 🚧 | 🚧 | 🚧 | 🚧 |
| JSON | 🚧 | 🚧 | 🚧 | 🚧 |
| Dict | 🚧 | 🚧 | 🚧 | 🚧 |
| YAML | 🚧 | 🚧 | 🚧 | 🚧 |
Installation
Basic Installation
pip install msgcenterpy
With Optional Dependencies
# Install ROS2 support
conda install ros-humble-ros-core ros-humble-std-msgs ros-humble-geometry-msgs -c robostack-staging
From Source
git clone https://github.com/ZGCA-Forge/MsgCenterPy.git
cd MsgCenterPy
pip install -e .[dev]
Quick Start
Please visit: https://zgca-forge.github.io/MsgCenterPy/
Development
Quick Development Setup
For Linux/macOS:
git clone https://github.com/ZGCA-Forge/MsgCenterPy.git
cd MsgCenterPy
./scripts/setup-dev.sh
For Windows:
git clone https://github.com/ZGCA-Forge/MsgCenterPy.git
cd MsgCenterPy
.\scripts\setup-dev.ps1
Manual Development Setup
git clone https://github.com/ZGCA-Forge/MsgCenterPy.git
cd MsgCenterPy
pip install -e .[dev]
pre-commit install
For API documentation, please refer to Quick Start
Star History
License
This project is licensed under Apache-2.0 License - see the LICENSE file for details.
Made with ❤️ by the MsgCenterPy Team
Description
Unified message conversion system supporting ROS2, Pydantic, Dataclass, JSON, YAML, Dict, and MCP schema inter-conversion
Languages
Python
97%
PowerShell
1.8%
Shell
1.2%