Features
- 🛠 Code Transforms:
blext
provides automatic transforms on your code, to make it easier.- Absolute Imports: By default, you can't use absolute imports in Blender extensions. In
blext
, you'll find that this "magically" works! In fact, all absolute imports to your own extension are cleanly and reliably replaced with equivalent relative imports.
- Absolute Imports: By default, you can't use absolute imports in Blender extensions. In
-
📦 Fearless Dependencies:
blext
takes care of the hassle in the background.- Cross Platform: Using
uv
's universal resolution and custom logic,blext
selects the most compact, compatbile wheels to ship, so that your extension works with all the platforms you wish to support. - Smart Download:
blext
downloads wheels on many threads, to maximize bandwidth utilization.blext
also validates wheels by-hash, and caches wheels to make sure you don't have to download the same wheel twice.
- Cross Platform: Using
-
🗂️ Flexible Configuration:
blext
extensions are configured just like any other Python project: With a standard[tool]
table.- PEP 621 (
pyproject.toml
): All Python projects have apyproject.toml
these days, with fields likeproject.name
.blext
uses these standard fields to configure your extension, and adds a[tool.blext]
for configuration specific to Blender extension. - PEP 723 (inline script metadata):
blext
supports single-file script that build to Blender extensions. Whatever you'd put inpyproject.toml
, just put it in "inline script metadata"!
- PEP 621 (