This release has been yanked by its maintainers, and will be ignored by installers, except when explicitly specified.
🔧 AssetPipe
Universal Asset Pipeline CLI — One tool to rule them all.
Convert, optimize, and validate 3D/2D assets across formats. Built for game studios, VFX houses, and arch-viz firms.
Features
- Format Conversion — FBX ↔ glTF ↔ OBJ ↔ USD ↔ Alembic
- Texture Optimization — Resize, compress, generate mipmaps, convert to KTX2/WebP
- Mesh Optimization — Decimate, LOD generation, clean topology
- Validation — Missing textures, broken UVs, scale issues, naming conventions
- Batch Processing — Watch folders, CI/CD hooks, parallel execution
- Plugin System — Add custom rules and converters
Installation
pip install assetpipe
Quick Start
# Convert a single file
assetpipe convert model.fbx --to gltf
# Convert with optimization
assetpipe convert model.fbx --to gltf --optimize --validate
# Batch process a directory
assetpipe batch ./assets --config pipeline.yaml
# Watch folder for automatic processing
assetpipe watch ./incoming --config pipeline.yaml
# Validate assets
assetpipe validate ./assets --rules strict
# Generate report
assetpipe report ./assets --output report.html
Configuration
Create a pipeline.yaml file:
version: 1
input:
formats: [fbx, obj, blend]
output:
format: gltf
directory: ./processed
optimization:
mesh:
decimate: 0.5 # Reduce to 50% triangles
generate_lods: [1.0, 0.5, 0.25]
textures:
max_size: 2048
format: webp
quality: 85
validation:
rules:
- no_missing_textures
- valid_uvs
- max_triangles: 100000
- naming_convention: "^[a-z][a-z0-9_]*$"
notifications:
slack:
webhook: $SLACK_WEBHOOK
on: [error, complete]
CLI Commands
| Command | Description |
|---|---|
convert |
Convert a single asset |
batch |
Process multiple assets |
watch |
Watch folder for changes |
validate |
Validate assets against rules |
optimize |
Optimize meshes and textures |
report |
Generate asset report |
info |
Show asset information |
plugins |
Manage plugins |
Supported Formats
3D Models
- Import: FBX, OBJ, glTF/GLB, BLEND*, USD*, Alembic*
- Export: glTF/GLB, OBJ, USD*
Textures
- Import: PNG, JPG, TGA, EXR, PSD*
- Export: PNG, JPG, WebP, KTX2*
*Requires additional dependencies
Plugin Development
Create custom converters and validators:
# plugins/my_validator.py
from assetpipe.plugins import ValidatorPlugin, ValidationResult
class MyValidator(ValidatorPlugin):
name = "my_custom_check"
def validate(self, asset):
if asset.triangle_count > 50000:
return ValidationResult.error("Too many triangles!")
return ValidationResult.ok()
Register in pipeline.yaml:
plugins:
- path: ./plugins/my_validator.py
enabled: true
CI/CD Integration
GitHub Actions
- name: Validate Assets
run: |
pip install assetpipe
assetpipe validate ./assets --rules strict --fail-on-error
Pre-commit Hook
# .pre-commit-config.yaml
repos:
- repo: local
hooks:
- id: assetpipe-validate
name: Validate 3D Assets
entry: assetpipe validate
files: \.(fbx|obj|gltf|glb)$
language: system
License
MIT License - see LICENSE for details.
Contributing
Contributions welcome! See CONTRIBUTING.md for guidelines.
Metadata
Release files for assetpipe 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| assetpipe-0.1.0.tar.gz | 44.6 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| assetpipe-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 94.3 kB
Release files / assetpipe-0.1.0.tar.gz
| Download URL | assetpipe-0.1.0.tar.gz |
|---|---|
| Size | 44.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
8d762adc7ea5b15bd5d5b5b562e2968d192d48304273797dd1cf54babc12cd03
|
|
BLAKE2b-256 checksum How to use checksums |
a2d80aecd5ac25e4ed2e4b601b3de96bc3bdc9309d437a40b11d2882d09375fd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.0
|
Release files / assetpipe-0.1.0-py3-none-any.whl
| Download URL | assetpipe-0.1.0-py3-none-any.whl |
|---|---|
| Size | 49.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c4e2ae2834cb6d85857840b830b7c0b8f76a870678c18b073885dace67781d30
|
|
BLAKE2b-256 checksum How to use checksums |
3be29c6a4b15d748173becefead088409798cd2adb5cd6a96827dfc3b276bc13
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.0
|
Security for assetpipe 0.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.