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)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b7d97fdf423a68c538f110cd3dae7e9c559c5cf95102696021230ed55363c390
|
|
| MD5 |
1901248933a001660fcf4aa8a8e0734f
|
|
| BLAKE2b-256 |
94993685fc3e59d26840505ffe635bd0a804a5ee47b76a205a85595f3eccba29
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
13fe950f223f7054724a6e691dfed6a193b31ce563603eaf3a5a9bcf576638bf
|
|
| MD5 |
96d2a7c5a07999f38415bbe2f5844fae
|
|
| BLAKE2b-256 |
8030aa677a2d98ea521d11930d2906d395988773f33678c1addfdd25332068bc
|