--- id: openjd-model version: "0.11.2" license: Apache-2.0 license_treatment: permissive maintenance: active --- # openjd-model — Provides a Python implementation of the data model for Open Job Description's template schemas. License: permissive · Maintenance: active · Downloads: 112.6K/mo ## What it is and what it does openjd-model is a Python implementation of the Open Job Description data model, a flexible specification for defining render jobs portably across studios and render management systems. It provides functions to parse JSON or YAML job templates, validate them against the specification, construct model objects programmatically, and convert between formats. The library targets interoperability by allowing applications to translate jobs from Open Job Description format into the native format of any render management software. The package depends on pyyaml and pydantic for document parsing and validation. It supports multiple specification versions and extensions (such as TASK_CHUNKING), and includes utilities for job parameter preprocessing, job creation from templates, and step dependency graph analysis. The library is actively maintained, supports Python 3.9–3.12, and is distributed as compiled wheels across macOS, Linux, and Windows platforms. Use it for: - Translate render job definitions from Open Job Description format into your studio's proprietary render management system. - Validate job templates against the Open Job Description specification before submission to a render farm. - Programmatically construct job templates and step definitions using Python objects instead of hand-writing JSON or YAML. - Analyze job step dependencies and build execution graphs for scheduling or visualization. - Preprocess and inject job parameters into templates before job creation or submission. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Parses, validates, and constructs Open Job Description template models in Python, enabling conversion between JSON/YAML and standardized job specification objects. Yes. The package is actively maintained, has no known vulnerabilities, carries a permissive Apache-2.0 license, and directly solves the problem of standardizing job definitions across render management systems. Install it if you need to parse, validate, or generate Open Job Description templates in Python, or if you are building a tool that translates between job formats. ## Install pip install openjd-model uv add openjd-model poetry add openjd-model ## Installing openjd-model Before you install: Medium install friction due to compiled wheels for multiple platforms (cp39-abi3 across macOS, Linux, Windows architectures). Active maintenance with a release 10 days ago; supports Python 3.9 through 3.12. License in practice: Apache-2.0 permissive license allows commercial and private use with minimal restrictions; suitable for most production and proprietary projects. Quickstart: from openjd.model import decode_job_template, document_string_to_object, DocumentType template_string = """specificationVersion: jobtemplate-2023-09 name: DemoJob steps: - name: DemoStep script: actions: onRun: command: python args: ["-c", "print('Hello')"] """ template_object = document_string_to_object( document=template_string, document_type=DocumentType.YAML ) job_template = decode_job_template(template=template_object) Requires Python 3.9 or higher; Linux, macOS, or Windows operating system. Verify before relying: - Whether the library handles all Open Job Description specification versions beyond 2023-09, or if version support is limited. - Performance characteristics when parsing or validating large or deeply nested job templates. - Whether step dependency resolution (StepDependencyGraph) handles cyclic dependencies or other edge cases gracefully. ## Package facts - License: Apache-2.0 (permissive) - Python support: supports_current - Install friction: medium - Maintenance: active - Downloads: 112.6K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags job template parsing validation, open job description python, render job specification, job template to json yaml, job workflow model library, render management interoperability, job schema validation, job-scheduling, render-farm, specification-implementation [View on SkillFed](https://skillfed.io/packages/openjd-model) · [View on PyPI](https://pypi.org/project/openjd-model/)