Metadata-Version: 2.3
Name: transportations_library
Version: 0.1.12
Classifier: Programming Language :: Rust
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
Requires-Dist: pymupdf >=1.26.6
Requires-Dist: pymupdf-layout >=1.26.6
Requires-Dist: pymupdf4llm >=0.0.17
Requires-Dist: pytest >=6.0 ; extra == 'test'
Requires-Dist: pytest-cov ; extra == 'test'
Provides-Extra: test
Summary: CrossTraffic transportations library
Keywords: rust,pypi,pyo3,transportation,library
Author: raynbowy23
Author-email: Rei Tamaru <tamaru@wisc.edu>
License: MIT OR Apache-2.0
Requires-Python: >=3.10
Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM
Project-URL: Homepage, https://github.com/crosstraffic/transportations_library

# Transportations Library

A comprehensive Rust-based library implementing transportation engineering methodologies (e.g., the Highway Capacity Manual (HCM)) with Python bindings.

## Features

- **Highway Capacity Manual (HCM) 7th Edition** methodology implementations:
  - Chapter 11: Freeway Reliability Analysis
  - Chapter 12: Basic Freeway Segments
  - Chapter 13: Freeway Weaving Segments
  - Chapter 14: Freeway Merge and Diverge Segments
  - Chapter 15: Two-Lane Highways (including Bicycle LOS)
  - Managed Lanes

- **Python bindings** via PyO3/Maturin for easy integration

## Installation

### Rust

```toml
[dependencies]
transportations_library = "0.1"
```

### Python

```bash
pip install transportations-library
```

## Usage

### Rust

```rust
use transportations_library::hcm::weaving::{WeavingInput, analyze};

let input = WeavingInput::default();
let result = analyze(&input);
println!("LOS: {:?}", result.los);
```

### Python

```python
import transportations_library as tl

# Use HCM methodologies
# (Python bindings documentation coming soon)
```

## Documentation

This project uses two documentation systems:

### API Reference (rustdoc)

Auto-generated from code comments:

```bash
cargo doc --open
```

Published at: <https://docs.rs/transportations-library>

### User Guide (mdbook)

Conceptual guides, tutorials, and examples located in `docs/book/`:

```bash
cd docs/book
mdbook serve    # Serve locally at http://localhost:3000
mdbook build    # Build to docs/book/book/
```

#### Using mdbook-toc

The documentation uses [mdbook-toc](https://crates.io/crates/mdbook-toc) to generate inline tables of contents.

**Install:**
```bash
cargo install mdbook mdbook-toc
```

**Usage in markdown files:**

Add `<!-- toc -->` marker where you want the table of contents:

```markdown
# Page Title

<!-- toc -->

## Section 1
Content...

## Section 2
Content...
```

The marker will be replaced with clickable links to each section.

**Configuration** (in `docs/book/book.toml`):
```toml
[preprocessor.toc]
command = "mdbook-toc"
renderer = ["html"]
max-level = 4
```

## 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.

