Skip to main content
Yanked

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)

Source distribution for assetpipe 0.1.0
File Size Uploaded Provenance
assetpipe-0.1.0.tar.gz 44.6 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for assetpipe 0.1.0
File Interpreter ABI Platform
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.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page