Skip to main content

JSON-Schema & taxonomy for Fulldome pipelines

Project description

Immersive Projects CG Pipeline Schema Suite

A JSON Schema designed to ensure consistent data structure across production pipelines.

🌟 Features

  • Core shot schema – validates every scene or sub-scene with detailed metadata
  • Project schema – wraps all shots for whole-show validation and global settings
  • Enum packs – single source of truth for techniques, risk flags, screen zones, and more
  • Taxonomy packs – human-friendly categorization for UI components
  • LLM I/O schema – guarantees safe, auditable AI edits
  • Comprehensive examples – real-world usage patterns and edge cases
  • Automated testing – full validation suite with edge case coverage
  • ESM/CommonJS Support – dual module format support for modern Node.js environments

📦 Installation

# npm
npm install immerschema@1.3.0

# pip
pip install immerschema==1.3.0

📦 Project Structure

immerschema/
├── schemas/                    # Core JSON Schema files
│   ├── enum/                  # Enumeration schemas
│   ├── ext/                   # Extension schemas
│   ├── io/                    # Input/Output schemas
│   └── taxonomy/              # Taxonomy definitions
├── examples/                   # Comprehensive examples
├── test/                      # Test files and validation
└── scripts/
    └── test_runner.js         # Automated test runner

🚀 Quick Start

Installation

# Install dependencies
npm install

# Or install AJV globally for command-line validation
npm run install-global-ajv

Basic Validation

# Validate a shot against core schema
ajv validate -s schemas/core.schema.json -d examples/simple_shot.json

# Validate whole project
ajv validate -s schemas/project.schema.json -d examples/simple_project.json

# Run all automated tests
npm test

🧪 Testing & Validation

Automated Test Suite

Run the comprehensive test suite:

npm test

This validates:

  • All example files against their schemas
  • Edge cases and boundary conditions
  • Invalid input detection
  • Enum value validation
  • Required field enforcement

Manual Testing

# Test individual files
ajv validate -s schemas/core.schema.json -d test/edge_cases.json

# Test with verbose output
ajv validate -s schemas/project.schema.json -d examples/comprehensive_project.json --verbose
# Install dependencies
npm install

# Run tests during development
npm test

# Validate specific examples
npm run validate-shot examples/ai_generated_shot.json
npm run validate-project examples/comprehensive_project.json

📄 License

MIT License - see LICENSE file for details.


Project details


Download files

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

Source Distribution

immerschema-1.3.0.tar.gz (12.0 kB view details)

Uploaded Source

Built Distribution

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

immerschema-1.3.0-py3-none-any.whl (27.3 kB view details)

Uploaded Python 3

File details

Details for the file immerschema-1.3.0.tar.gz.

File metadata

  • Download URL: immerschema-1.3.0.tar.gz
  • Upload date:
  • Size: 12.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.13

File hashes

Hashes for immerschema-1.3.0.tar.gz
Algorithm Hash digest
SHA256 b7d97fdf423a68c538f110cd3dae7e9c559c5cf95102696021230ed55363c390
MD5 1901248933a001660fcf4aa8a8e0734f
BLAKE2b-256 94993685fc3e59d26840505ffe635bd0a804a5ee47b76a205a85595f3eccba29

See more details on using hashes here.

File details

Details for the file immerschema-1.3.0-py3-none-any.whl.

File metadata

  • Download URL: immerschema-1.3.0-py3-none-any.whl
  • Upload date:
  • Size: 27.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.13

File hashes

Hashes for immerschema-1.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 13fe950f223f7054724a6e691dfed6a193b31ce563603eaf3a5a9bcf576638bf
MD5 96d2a7c5a07999f38415bbe2f5844fae
BLAKE2b-256 8030aa677a2d98ea521d11930d2906d395988773f33678c1addfdd25332068bc

See more details on using hashes here.

Supported by

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