Metadata-Version: 2.4
Name: veriq
Version: 0.0.1
Summary: A lightweight Python library for managing system requirements, verifications, and design.
Author: Shunichiro Nomura
Author-email: Shunichiro Nomura <nomura@space.t.u-tokyo.ac.jp>
License-Expression: MIT
License-File: LICENSE
Classifier: Development Status :: 3 - Alpha
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.13
Classifier: Typing :: Typed
Requires-Dist: pydantic>=2.11.7
Requires-Dist: rich>=14.0.0
Requires-Dist: scoped-context>=0.0.1
Requires-Dist: typer>=0.16.1
Requires-Python: >=3.13
Project-URL: Issues, https://github.com/shunichironomura/veriq/issues
Project-URL: Repository, https://github.com/shunichironomura/veriq
Description-Content-Type: text/markdown

# veriq — Requirements verification tool

> [!WARNING]
> This package is still under active development.
> There are still known issues and limitations.

`veriq` manages requirements, design, and verification of an engineering system.

## Usage

### Defining Requirements

You can define requirements tree, verification functions, and design models.

See [examples/satellite.py](examples/satellite.py) for a complete example.

### Generating Design Schema

You can generate a JSON schema for your design models using the `veriq` CLI.

```bash
veriq schema satellite.py
```

This will create a `satellite.py.schema.json` file in the same directory as `satellite.py`.

### Defining the Design

You can define your design as a TOML file `satellite.py.design.toml`.

### Verifying Requirements

You can verify your requirements using the `veriq` CLI.

```bash
veriq verify satellite.py
```

This will read the requirements, verifications, and design models from `satellite.py` and the design from `satellite.py.design.toml`, and perform the verification.
