osc-devtools 0.1.0-alpha.3

Experimental CLI tools and examples for osc-data-model workspace
# osc-devtools

⚠️ **EXPERIMENTAL** ⚠️  
This crate is experimental and APIs may change significantly between versions.

CLI tools and examples for the `osc-data-model` workspace, providing utilities for testing, debugging, and demonstrating OSC intermediate representation functionality.

## Installation

```bash
cargo install osc-devtools --version 0.1.0-alpha.1
```

Or build from source:

```bash
git clone https://github.com/Nagitch/osc-data-model
cd osc-data-model
cargo build --release --bin osc-devtools
```

## Usage

The CLI provides subcommands for testing and demonstrating OSC data conversion:

```bash
# Show help
osc-devtools --help

# Test JSON roundtrip conversion
osc-devtools json-roundtrip

# Test MessagePack roundtrip conversion
osc-devtools msgpack-roundtrip

# Demonstrate complex bundle nesting and conversion
osc-devtools bundle-demo
```

## Examples

### JSON Roundtrip Testing

Test that data survives JSON serialization and deserialization:

```bash
# Test JSON roundtrip with simple string data
osc-devtools json-roundtrip
```

### MessagePack Roundtrip Testing

Test that data survives MessagePack serialization and deserialization:

```bash
# Test MessagePack roundtrip with simple string data
osc-devtools msgpack-roundtrip
```

### Bundle Demo

Demonstrate complex nested bundle structures and cross-format conversion:

```bash
# Creates complex nested bundles and tests conversion
osc-devtools bundle-demo
```

This command:
- Creates complex nested bundle structures
- Tests JSON and MessagePack roundtrip conversion
- Verifies cross-codec compatibility
- Reports conversion success and data sizes

### Development Usage

The tools are useful for:

- **Testing codec implementations** with real data
- **Debugging serialization issues** across formats  
- **Performance benchmarking** of different formats
- **Generating test fixtures** for other projects
- **Validating OSC data structures** before processing

## Command Reference

### `json-roundtrip`
Tests JSON serialization and deserialization using a simple string value.

### `msgpack-roundtrip`
Tests MessagePack serialization and deserialization using a simple string value.

### `bundle-demo`
Demonstrates complex nested bundle creation and tests both JSON and MessagePack conversion with cross-format compatibility verification.

## Dependencies

- `osc-ir`: Core IR types
- `osc-codec-json`: JSON serialization
- `osc-codec-msgpack`: MessagePack serialization
- `clap`: Command-line argument parsing
- `anyhow`: Error handling

## License

Licensed under either of

 * Apache License, Version 2.0 ([LICENSE-APACHE]../LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
 * MIT license ([LICENSE-MIT]../LICENSE-MIT or http://opensource.org/licenses/MIT)

at your option.