An ecosystem of Python tools and frameworks for Autodesk Maya.
Note: This repository is under active development. APIs may change.
TikWorks is a layered ecosystem where each package builds on the foundations below it:
tik.core # semantic primitives
↑
tik.maya # disciplined Maya wrapper
↑
tik.shared # reusable infrastructure and UX
↑
tik.trigger # rigging language and framework
↑
tik.tools # user-facing tools and workflows
tik.maya is the foundational layer — a namespaced, Pythonic wrapper for maya.cmds that brings:
- UUID-based node tracking — References stay valid after renames
- Object-oriented API — Work with typed objects, not strings
- Less code, more clarity — Common operations in fewer lines
- Type safety — IDE autocomplete and meaningful errors
import tik.maya as tm
# Wrap existing nodes with automatic type resolution
cube = tm.resolve("pCube1") # Returns Transform
# Properties for state
cube.translate = (1, 2, 3)
cube["visibility"].value = False
# Methods for actions
cube.freeze(translate=True, rotate=True)
locator = tm.Locator.create(name="locator1")
# Attribute connections with operators
locator["translate"] >> cube["translate"]
# Node references survive renames!
cube.rename("myNewCube")
cube.translate_x = 10 # Still worksFull documentation is available at Read the Docs.
- Why tik.maya? — Benefits over raw
cmds - Quickstart — Get started in 5 minutes
- API Reference — Full class and method docs
- tik.core — Pure, domain-agnostic value objects
- tik.maya — Disciplined Maya wrapper (active)
- tik.shared — Cross-tool helpers and shared UI utilities
- tik.trigger — Rigging framework (coming soon)
- tik.tools — User-facing tools and workflows
- Autodesk Maya 2024+
- Python 3.10+
See LICENSE file for details.