Metadata-Version: 2.5
Name: strictspec
Version: 0.3.0
Summary: Define a schema once in TOML, and generate the full toolchain in your language: validation, versioning, migrations, etc. -- First-class support for Go, Python, and TypeScript
Project-URL: Homepage, https://smmh.dev/strictspec/
Project-URL: Documentation, https://smmh.dev/strictspec/
Project-URL: Repository, https://github.com/stricttools/strictspec
Project-URL: Issues, https://github.com/stricttools/strictspec/issues
Project-URL: Changelog, https://github.com/stricttools/strictspec/blob/main/CHANGELOG.md
Author-email: "S. M. Hosseini" <m.hosseini@veliu.com>
License-Expression: MIT
License-File: LICENSE
Keywords: codegen,rlsbl,schema,strictspec,toml,validation
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.11
Requires-Dist: tomlkit
Description-Content-Type: text/markdown

# strictspec (Python)

Define a schema once in TOML, and generate the full toolchain in your language: validation, versioning, migrations, etc. -- First-class support for Go, Python, and TypeScript.

This package is the Python runtime library and CLI for
[strictspec](https://github.com/stricttools/strictspec).

This is a placeholder skeleton. The runtime (document I/O, diagnostics, tagged
values, constraint engine) and the CLI launcher stub land in a later phase.

## Versioning

This package, the `strictspec` npm package and the Go module
`github.com/stricttools/strictspec/go` are one release unit: they always carry the
same version and are published together, so the runtime always matches the
toolchain that generated its code — and the first-run launcher can fetch the
binary that pairs with it. A version therefore moves for all three even when
only one of them changed.

## Development

```bash
uv sync
uv run pytest
```
