rustuse 0.2.0

Composable facade for RustUse utility crates
Documentation
# rustuse

Composable facade for RustUse utility crates.

`rustuse` provides a single top-level entry point for published RustUse domain facades. Each enabled feature exposes one domain facade crate at the root of this crate, such as `rustuse::use_geometry`, `rustuse::use_web`, or `rustuse::use_math`.

The root `rustuse` crate does not expose every focused child crate directly. Focused child crates are accessed through their domain facade re-exports or by depending on the focused child crate directly.

## Installation

Enable the domain facades you need:

```bash
cargo add rustuse --features geometry
```

Enable multiple domains:

```bash
cargo add rustuse --features geometry,web,math
```

Enable all published RustUse domain facades:

```bash
cargo add rustuse --features full
```

Or configure features manually:

```toml
[dependencies]
rustuse = { version = "0.2", features = ["geometry", "web", "math"] }
```

The default feature set is empty, so `rustuse` only exposes the facades you explicitly enable.

## Usage

Import an enabled domain facade from the crate root:

```rust,ignore
use rustuse::use_geometry as geometry;
```

Use multiple facades together:

```rust,ignore
use rustuse::use_geometry as geometry;
use rustuse::use_math as math;
use rustuse::use_web as web;
```

Enable `full` for broad exploration:

```rust,ignore
use rustuse::use_color as color;
use rustuse::use_physics as physics;
use rustuse::use_time as time;
use rustuse::use_wave as wave;
```

These imports require the corresponding Cargo features to be enabled.

## Architecture

The `rustuse` crate maintains a facade-only dependency structure:

1. **Top-level inventory**: one published facade crate per domain.
2. **Feature-gated access**: each domain facade is enabled explicitly through a Cargo feature.
3. **Root-level re-exports**: enabled facades are exposed as `rustuse::use_*`.
4. **Child crate access**: focused child crates are reached through domain facade re-exports or direct dependencies.
5. **No child-crate flattening**: `rustuse` does not expose every focused crate directly.

This keeps the root crate small, predictable, and stable as domain workspaces grow.

## License

Licensed under either of the following, at your option:

- Apache License, Version 2.0, in `LICENSE-APACHE`
- MIT license, in `LICENSE-MIT`