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.1
# pip
pip install immerschema==1.3.1
📦 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.1.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.1.tar.gz.
File metadata
- Download URL: immerschema-1.3.1.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 |
52ff20bd134039b05efd9f7d7722ea1499abb6b0e5a441a09936509b2b948e25
|
|
| MD5 |
d880d5ac9219e515333c917e37168d32
|
|
| BLAKE2b-256 |
b951ab2fc7d9924614e3cb20683ac657d08b21b57674323c7e742654ca31281d
|
File details
Details for the file immerschema-1.3.1-py3-none-any.whl.
File metadata
- Download URL: immerschema-1.3.1-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 |
2a3c4414d89c45d7c36340a4b33de7a7d5ab4b932589e1d2a865738ac35084c4
|
|
| MD5 |
e67bf38ab9efd2f3156cdcd3710a53d5
|
|
| BLAKE2b-256 |
7813e03004f78828ce8c348f16720ee02809f34fb45ddd7212ad8b2e04764392
|