Skip to main content

veriq

PyPI PyPI - License PyPI - Python Version Test Status codecov Documentation uv Ruff

[!WARNING] This project is in early development. The API may change in future releases.

veriq is a Python library for requirements verification and design calculation management in engineering projects. Think of it as a smart spreadsheet that tracks dependencies between calculations and automatically verifies that requirements are met.

What Does veriq Do?

When you define your engineering project with veriq, it:

  1. Organizes your design parameters - Define input data using Pydantic models
  2. Tracks calculation dependencies - Automatically resolves the order of calculations
  3. Verifies requirements - Checks that your design meets all specified requirements
  4. Exports results - Saves all inputs, calculations, and verification results to TOML files

Quick Example

Define your project in Python:

import veriq as vq
from pydantic import BaseModel
from typing import Annotated

project = vq.Project("MySatellite")
power = vq.Scope("Power")
project.add_scope(power)

@power.root_model()
class PowerModel(BaseModel):
    battery_capacity: float  # in Watt-hours

@power.verification()
def verify_capacity(
    capacity: Annotated[float, vq.Ref("$.battery_capacity")],
) -> bool:
    return capacity >= 100.0  # Minimum 100 Wh

Create an input file input.toml:

[Power.model]
battery_capacity = 150.0

Run verification:

veriq calc my_project.py -i input.toml -o output.toml --verify

Why Use veriq?

  • Type Safety - Leverage Pydantic for validated, typed design parameters
  • Dependency Tracking - Automatic resolution of calculation order
  • Requirement Traceability - Link verifications to engineering requirements
  • Reproducibility - TOML-based input/output for version control

License

MIT License

Acknowledgement

veriq originated in the shunichironomura/veriq repository, and its early development up to version v0.0.1 was supported by ArkEdge Space Inc.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

veriq-0.4.3.tar.gz (77.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

veriq-0.4.3-py3-none-any.whl (96.0 kB view details)

Uploaded Python 3

File details

Details for the file veriq-0.4.3.tar.gz.

File metadata

  • Download URL: veriq-0.4.3.tar.gz
  • Upload date:
  • Size: 77.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for veriq-0.4.3.tar.gz
Algorithm Hash digest
SHA256 0f9b9c4c39b3da8d03908cde4657a80a8a06a76bbfbf7043ba98ac9d52de38fc
MD5 0c55b557fc4a7b8d3797b9b083b4a3cb
BLAKE2b-256 ee0f2950f642e527c73f8adeb6740d5ffa7e1f9c42b46c268a37a3a2d51a94ba

See more details on using hashes here.

Provenance

The following attestation bundles were made for veriq-0.4.3.tar.gz:

Publisher: release.yaml on ut-issl/veriq

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file veriq-0.4.3-py3-none-any.whl.

File metadata

  • Download URL: veriq-0.4.3-py3-none-any.whl
  • Upload date:
  • Size: 96.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for veriq-0.4.3-py3-none-any.whl
Algorithm Hash digest
SHA256 5d6c0b770fec7495bc7cbd3878a7bbce1e3df2f53115645de27fdeb4a2f636c1
MD5 6497e14a413797913d0a0902901a393b
BLAKE2b-256 6b09e20bd3f58f481b75d6bcb48ebb2e95b559ad1761b03823a587e2fe7f0085

See more details on using hashes here.

Provenance

The following attestation bundles were made for veriq-0.4.3-py3-none-any.whl:

Publisher: release.yaml on ut-issl/veriq

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

0.4.3 This release

2 files

0.4.2

2 files

0.4.1

2 files

0.4.0

2 files

0.3.1

2 files

0.3.0

2 files

0.2.0

2 files

0.1.7

2 files

0.1.6

2 files

0.1.5

2 files

0.1.4

2 files

0.1.3

2 files

0.1.2

2 files

0.1.1

2 files

0.1.0

2 files

0.0.1

2 files

0

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page