xpict 0.3.0

Declarative molecule depiction for publication-quality vector graphics (Rust; also Python and JS)
# xpict (native Rust)

**Molecule depiction** — Rust API matching Python and JavaScript.

**Single molecule:** `mol` / `render` / `to_svg`.  
**Declarative document:** nested [`DepictSpec`](https://docs.rs/xpict) (`mol` /
`group`) — expanding toward full PictSpec.

**Layout:** crates.io [`rdkit`](https://crates.io/crates/rdkit) + Depictor FFI.  
**Paint:** [`xpict-core`](https://crates.io/crates/xpict-core).  
**Docs:** [GitHub Pages](https://swamidasslab.github.io/xenosite-pict/) ·
[label markup](https://github.com/swamidasslab/xenosite-pict/blob/main/docs/label-markup.md)

```rust
use xpict::{depict, mol, DepictSpec, MolNode, MolRenderOptions};

fn main() -> Result<(), xpict::Error> {
    let batch = depict(&DepictSpec::Group {
        id: None,
        children: vec![MolNode {
            smiles: Some("CCO".into()),
            ..Default::default()
        }],
    })?;

    let mut m = mol("CCO")?;
    let rendered = m.render(MolRenderOptions {
        atom_shade: Some(vec![0.0, 0.2, 0.9]),
        ..Default::default()
    })?;
    println!("{}", rendered.to_svg());
    let _ = batch;
    Ok(())
}
```

```bash
cargo test -p xpict
```

## License

MIT