Pyblish is a free, open-source (LGPL) framework written in Python that brings test-driven development to visual effects and triple-A game creation, hosted on GitHub.





Written by





What is it?

Pyblish is best described by answering the problems it solves.

I’m new and I made this asset, but I don’t know if I got it right..

Analyse the asset and handhold the user through the process of producing content compatible with the surrounding pipeline.

Everytime we make an update to an asset, something breaks and we spend weeks troubleshooting..

Test the asset against conventions held within an organisation to prevent bad content from slipping through.





Who’s using it?

Your studio here? Let me know!.





What plugins are available?





What are users saying?

I love Pyblish!

David Martinez - Character TD at TT Games

Pyblish is an ideal framework that modularises publishing workflow for visual effects by use of small functions and clear data types while providing wide-ranging functionality.

Lars van der Bijl - Head of Pipeline at Realise

Pyblish is what enables our artists to focus more on the artistic barrier of raising quality instead of the technical one whilst maintaining a pipeline that raises the bar for both.

Roy Nieterau - Director at Colorbleed

Pyblish is elegantly designed and closely resembles our in-house production publishing tools here at Imageworks. The setup and documentation is straightforward and easy to understand, getting you setup with a production-quality asset publisher in no time.

Dhruv Govil - Pipeline TD @ Sony Pictures Imageworks

I’m boarding this ship.

Milan Kolar - VFX Supervisor at Kredenc

Clean, small yet powerful. Redefined the way content has been saved and visualized.

Liju Kunnummal - Pipeline Developer at Prime Focus

Working across multiple pipelines, Pyblish is a much needed common framework. Pyblish allows me to fix problems in one production and instantly propagate the solutions to other productions.

Toke Jepsen - Technical Director at Bait Studio

I am really excited about using Pyblish on our next production.

Sveinbjörn J. Tryggvason - Pipeline Overlord at CAOZ

Have something to say? Let me know!





Overview

Pyblish provides a mechanism with which to implement a “publishing” pipeline.

See this short video demonstrating what this may look like to an artist.


Highlight

Notice how the artist attempts at sharing this updated version of Rubber Boy, but is notified of a problem. Not until this problem has been resolved may he commit this update for others to enjoy. This process is known as publishing.





Audience

Pyblish answers the two most commonly asked questions by artists and technical directors.

   _________________________              _______________________________
  /                         \      |     /                               \
 | - Where do I save it?     |     |    | How do I get artists to..       |
 | - How do I format it?     |     |    |   - save in the proper place?   | 
  \___________________________\    |    /_  - format appropriately?       |
                                o  |  o   \______________________________/
                                /| | |\
                               / | | | \
            Artist                 |                    TD


Role Description
Technical director Provides the means to define and programatically enforce a set of rules for how content must be formatted.
Artist Enables an unambiguous delivery of content.
Software developer A test-runner for content.


Beyond that, feel free to skim the hello world example to get a better understanding of what it really is.





Cross-platform, cross-software

Pyblish is designed to unify artists, platform and software under a single publishing mechanism. Written in cross-compatible pure-Python 2 and 3, Pyblish runs wherever Python runs (and in places where it does not).

Supported software

Known compatibility

Using it in a software package not listed here? Let me know!





Graphical User Interfaces

As a framework, developing your own bespoke GUI is entirely possible. Pyblish maintains two reference implementations for you to get started with.

pyblish-qml

pyblish-qml

Focus on features, user experience and bleeding edge technology via Qt QML and OpenGL, pyblish-qml is the first and most complete implementation of Pyblish, requires PyQt5.

pyblish-lite

Minimalism and compatibility lies in focus here, this requires any version of Python between 2.6-3.5 along with either PySide, PySide2, PyQt4 or PyQt5. pyblish-lite is a great fallback when having trouble with pyblish-qml.





Contact

For questions, bug reports or just general chit-chat - you can find us, along with the community, in the Forums and on Gitter. For bugs and feature requests, see the issue tracker.