Metadata-Version: 2.4
Name: runik
Version: 0.1.0
Summary: YAML syntax validation for Runespeak files.
Author-email: Mark Johnson <mark.johnson@jomolitechnology.com>
License-Expression: Apache-2.0
Project-URL: Homepage, https://github.com/MonkeyDData/runes-of-ruin
Project-URL: Source, https://github.com/MonkeyDData/runes-of-ruin
Project-URL: Issues, https://github.com/MonkeyDData/runes-of-ruin/issues
Keywords: validator,yaml,syntax,runespeak
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.12
Classifier: Operating System :: OS Independent
Requires-Python: >=3.12
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: pyyaml>=6.0
Requires-Dist: typer>=0.12
Provides-Extra: dev
Requires-Dist: black>=25.9.0; extra == "dev"
Requires-Dist: build>=1.3.0; extra == "dev"
Requires-Dist: pytest>=8.0; extra == "dev"
Requires-Dist: ruff>=0.14.0; extra == "dev"
Requires-Dist: twine>=6.2.0; extra == "dev"
Dynamic: license-file

# Runik

Runik is a small command-line YAML syntax validator for Runespeak files.

This public package intentionally performs syntax parsing only. It does not
perform semantic validation, compile code, execute pipelines, or include engine
integrations.

## Install

```bash
pip install runik
```

## Usage

Validate one YAML file:

```bash
runik validate path/to/spec.yaml
```

Validate all YAML files in a directory:

```bash
runik validate path/to/specs
```

Validate recursively:

```bash
runik validate path/to/specs --recursive
```

`runes` is also installed as a compatibility alias for the same CLI.

## Python API

```python
from pathlib import Path

from runes_of_ruin.validator import validate_yaml_file

result = validate_yaml_file(Path("spec.yaml"))
print(result.documents)
```
