Skip to content

Repository files navigation

OpenStudioHub: Pipeline Management System

Python Blender Kitsu Architecture

OpenStudioHub is a standalone desktop application designed to orchestrate the production pipeline for a 3D animation studio. It acts as a seamless, deterministic bridge between artists, the version control system (SVN/NAS), and the production tracker (Kitsu).

🎬 Watch the Demo Video Showcase Here


🐘 The Elephant in the Room: Blender Studio Tools

Any studio working with Blender has looked with envy at the Blender Foundation's official pipeline. Tools like the asset_pipeline (designed to enable simultaneous work on the same asset) and blender_kitsu (which connects the 3D interface directly with the production manager) are, on paper, a Technical Director's dream come true.

However, there is an "elephant in the room" that few talk about: these tools are not plug-and-play.

Implementing the Blender Studio Tools ecosystem outside the Foundation's walls requires overcoming a brutal technical learning curve. If your studio doesn't replicate their exact network infrastructure, use their strict SVN configuration, or if you have artists working remotely on Windows instead of Linux, integration usually ends in broken scripts, lost paths, and hours of frustration for the IT team.

Here is where OpenStudioHub comes in. Designed under a "zero friction" philosophy, it doesn't seek to reinvent the wheel, but to tame it. It works as a smart Sandbox environment that packages, pre-configures, and standardizes these powerful core tools, making them accessible to any studio—from an indie team to a mid-sized production company—with just a couple of clicks.


⚠️ The Problem: Changing Blender versions.

In large-scale productions, updating software versions or add-ons mid-show often breaks backward compatibility. Artists waste hours dealing with Python tracebacks, missing add-ons, and manual path configurations just to open a legacy file without corrupting modern production data.

💡 The Solution: An Ephemeral Sandbox

OpenStudioHub solves this by reading a configuration file (project_config.json) of each project and building dynamic software containers at runtime. It bypasses global OS installations completely by injecting environment variables to isolate extensions, wheels, and preferences per project.

This guarantees 100% backward compatibility and allows artists to run conflicting legacy tools (e.g., Blender 3.6) and modern pipelines (e.g., Blender 5.2) simultaneously with zero cross-contamination.


🏗️ High-Level Studio Architecture

flowchart LR
    subgraph Cloud [Studio Cloud Infrastructure]
        K[🦊 Kitsu API<br>SSO & Assignments]
        N[☁️ NAS<br>Software Vault & Manifests]
        S[🐘 SVN Server<br>Production Assets & Shots]
    end

    subgraph Workstation [Artist Local Machine]
        direction TB
        MH{⚙️ OpenStudioHub <br>Standalone Executable}
        RAM[(🧠 In-Memory Vault<br>Volatile Credentials)]
        SB[📦 Ephemeral Sandbox<br>./local/]
        DCC[🎨 Blender Subprocess]
    end

    K <-->|Role Auth / JSON| MH
    N -->|Downloads Add-ons .zip| MH
    MH -->|Writes Extensions & Configs| SB
    MH -->|Stores Passwords temporarily| RAM
    
    RAM -.->|Injects ENV variables| DCC
    SB -.->|BLENDER_USER_RESOURCES override| DCC
    DCC <-->|Commits/Updates Data| S

    classDef cloud fill:#2c3e50,stroke:#fff,stroke-width:2px,color:#fff;
    classDef local fill:#34495e,stroke:#fff,stroke-width:2px,color:#fff;
    classDef hub fill:#e67e22,stroke:#fff,stroke-width:3px,color:#fff;
    classDef security fill:#e74c3c,stroke:#fff,stroke-width:2px,color:#fff;

    class K,N,S cloud;
    class SB,DCC local;
    class MH hub;
    class RAM security;

Loading

💻 Development & Installation

The codebase is designed following the Separation of Concerns (MVC) principle, making it highly maintainable for Enterprise scaling.

  1. Clone the repository:
git clone [https://github.com/tu-usuario/openstudio-hub.git](https://github.com/tu-usuario/openstudiohub.git)
cd openstudiohub
  1. Create and activate the virtual environment:
python -m venv .venv
source .venv/bin/activate  # Linux/Mac
# .venv\Scripts\activate  # Windows
  1. Install dependencies:
pip install -r requirements.txt
  1. Run the Hub:
python openstudio_hub.py

📦 Packaging for Production

To distribute the tool to studio artists without requiring them to install Python, the application is "frozen" into a standalone executable using PyInstaller.

pyinstaller --noconsole --onefile --name "OpenStudioHub" openstudio_hub.py

(Note: The compiled executable is not tracked in this repository. Please visit the Releases tab to download the latest production build).


Developed by Ernesto Del Valle M. - Pipeline TD & Technical Artist.

About

OpenStudioHub is a pipeline manager for animation studios. It solves dependency issues by isolating Blender envs, dynamically injecting dependencies like custom addons and templates, and locking versions per project. It integrates SSO authentication with Kitsu and SVN version control, providing a seamless, error-proof interface for 3D artist

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Sponsor this project

Packages

Contributors

Languages