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.2
# pip
pip install immerschema==1.3.2
📦 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.2.tar.gz
(12.8 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.2.tar.gz.
File metadata
- Download URL: immerschema-1.3.2.tar.gz
- Upload date:
- Size: 12.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ebb25223df7739362f65cebe253b8f53c2ad6ec60bab0f9fa1ab61bc3b8693d9
|
|
| MD5 |
a5dba9eade7edfae9a4c82c1fb5862bc
|
|
| BLAKE2b-256 |
4e4a39e7a72d9f3b5b587ab6352fb7ba2f0922c60fe7f43f93c9fc1f19280a2d
|
File details
Details for the file immerschema-1.3.2-py3-none-any.whl.
File metadata
- Download URL: immerschema-1.3.2-py3-none-any.whl
- Upload date:
- Size: 28.7 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 |
80a4ae8cf1f4d06999d2ef82359bdaa63117d2ecc2489d63cd2dc4a9d71cfbcd
|
|
| MD5 |
eb3156845101f83f65a30e0a676e611f
|
|
| BLAKE2b-256 |
326e85d71586d7ddf57d7d4eb0a88e44d0c712115fe1402614ecbd16f5206a92
|