Bookmarks is a lightweight Python asset manager designed to browse and manage content of animation, VFX and film projects.
https://github.com/wgergely/bookmarks/releases/download/0.6.0/Bookmarks_0.6.0.exe
Features
Bookmarks separate content as bookmark
, asset
and file
items. Each
bookmark item contains a series of asset items that in turn contain the file
items. Bookmark and asset items can be configured independently to link with,
for instance, ShotGrid
entities or be set up with properties, like frame-rate,
resolution, and custom URLs. These properties can be used to quickly configure scenes
in host applications, e.g. Maya, and to access related external resources.
The app provides simple tools to create jobs and assets using ZIP templates, templated file-names
and options to annotate and filter existing items, and preview images using OpenImageIO
.
Background
This project was developed to manage personal projects and is adapted to custom way of setting them up. his is to say, Bookmarks expects certain patterns to be respected to read files and folders correctly. I tried my best to keep things customizable to adapt to site specific environments.
Quick Start
The simplest way to start Bookmarks as a standalone application is to run:
import bookmarks
bookmarks.exec_()
Dependencies
The following python packages are required to run Bookmarks:
-
Python3
: Tested against 3.9. -
PySide2
: Tested against Qt 5.15.2. https://pypi.org/project/PySide2 -
OpenImageIO
: Used to generate thumbnails for image items https://github.com/OpenImageIO/oiio -
slack_sdk
: https://pypi.org/project/slack_sdk -
psutil
: https://pypi.org/project/psutil -
shotgun_api3
: https://github.com/shotgunsoftware/python-api
Currently, Windows is the only supported platform (although much of the codebase should be platform-agnostic).
NOTE: OpenImageIO does not currently maintain installable python packages. Building it manually is therefore required.
Standalone and Embedded Modes
Bookmarks can be run in two modes. As a standalone application, or embedded in a PySide2 environment. The base-layers can be initialized with:
from bookmarks import common
common.initialize(common.EmbeddedMode) # or common.StandaloneMode
bookmarks.exec_()
is a utility method for starting Bookmarks in
common.StandaloneMode
, whilst common.EmbeddedMode
is useful when
running from inside a host DCC. Currently only the Maya plugin makes use of this mode.
See bookmarks.maya
and bookmarks.common
for the related methods.