DracoPy
Python wrapper for Google's Draco Mesh Compression Library
Decision gist · record as of 2026-08-14
Yes. DracoPy is a stable, actively maintained wrapper around a widely-used compression standard with no security vulnerabilities, permissive licensing, and prebuilt wheels that minimize install friction. Install it if you need to compress or decompress 3D mesh data; the medium friction is offset by broad platform support and a straightforward API.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires numpy; source builds need a C++11-compatible compiler.
- Medium install friction due to compiled C++ components, but prebuilt wheels are available for Python 3.10–3.13 on macOS, Linux, and Windows.
- Repository is actively maintained with recent commits.
License · maintenance · safety
Apache-2.0 (permissive) — Licensed under Apache-2.0 (permissive), allowing commercial and private use with minimal restrictions.
last release 2025-11-11 (276 days) · last repo commit 2026-07-20 · 120 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 304,758 downloads/mo, #7,802 on PyPI
Alternatives
Verify before relying
pip install DracoPy
import DracoPy
with open('bunny.drc', 'rb') as draco_file:
mesh = DracoPy.decode(draco_file.read())
binary = DracoPy.encode(mesh.points, mesh.faces, quantization_bits=14)- Whether numpy is automatically installed as a dependency or must be installed separately.
- Performance characteristics (compression ratio, encode/decode speed) for typical mesh sizes.
- Support status for Python 3.14 (listed in classifiers but not in wheel evidence).
What it is and what it does
DracoPy wraps Google's Draco mesh compression library to compress and decompress 3D mesh geometry in Python. It reads and writes Draco-encoded files (.drc), supporting both triangle meshes and point clouds. The library lets you control compression trade-offs through quantization bits, compression level, and quantization range, making it useful for applications that need to reduce 3D geometry file sizes while managing precision loss.
The package ships with prebuilt wheels for modern Python versions on major platforms, though source builds require a C++11 compiler. It has no runtime dependencies beyond numpy and is actively maintained with a stable API.
Use it for
- Compress 3D mesh models for storage or network transmission in graphics and CAD applications.
- Decode Draco-compressed geometry in web-based 3D viewers or game engines that use compressed assets.
- Reduce file sizes of point cloud datasets from 3D scanning or LiDAR capture.
- Batch-process mesh files with tunable quantization to balance compression ratio and geometric fidelity.
- Integrate mesh compression into data pipelines for 3D reconstruction or photogrammetry workflows.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes.
DracoPy is a stable, actively maintained wrapper around a widely-used compression standard with no security vulnerabilities, permissive licensing, and prebuilt wheels that minimize install friction. Install it if you need to compress or decompress 3D mesh data; the medium friction is offset by broad platform support and a straightforward API.
Install
dracopy on PyPI
Before you install
Medium install friction due to compiled C++ components, but prebuilt wheels are available for Python 3.10–3.13 on macOS, Linux, and Windows. Repository is actively maintained with recent commits.
Requires numpy; source builds need a C++11-compatible compiler.
License in practice
Licensed under Apache-2.0 (permissive), allowing commercial and private use with minimal restrictions.
Quickstart
pip install DracoPy
import DracoPy
with open('bunny.drc', 'rb') as draco_file:
mesh = DracoPy.decode(draco_file.read())
binary = DracoPy.encode(mesh.points, mesh.faces, quantization_bits=14)
Verify before relying
- Whether numpy is automatically installed as a dependency or must be installed separately.
- Performance characteristics (compression ratio, encode/decode speed) for typical mesh sizes.
- Support status for Python 3.14 (listed in classifiers but not in wheel evidence).
Package facts
| License | Apache-2.0 permissive |
| Python support | Not specified |
| Install friction | Medium. Platform-specific wheel |
| Runtime dependencies | None |
| Maintenance | Actively maintained 276 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 304,758 / month, #7,802 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 5 - Production/StableIntended Audience :: DevelopersOperating System :: MacOSOperating System :: Microsoft :: Windows :: Windows 10Operating System :: POSIXProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Topic :: Scientific/EngineeringTopic :: Utilities |
Evidence: dracopy-2.0.0-cp310-cp310-macosx_10_9_x86_64.whl; dracopy-2.0.0-cp310-cp310-macosx_11_0_arm64.whl; dracopy-2.0.0-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl; dracopy-2.0.0-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl; dracopy-2.0.0-cp310-cp310-win32.whl; dracopy-2.0.0-cp310-cp310-win_amd64.whl; dracopy-2.0.0-cp311-cp311-macosx_10_9_x86_64.whl; dracopy-2.0.0-cp311-cp311-macosx_11_0_arm64.whl; dracopy-2.0.0-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl; dracopy-2.0.0-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl; dracopy-2.0.0-cp311-cp311-win32.whl; dracopy-2.0.0-cp311-cp311-win_amd64.whl; dracopy-2.0.0-cp312-cp312-macosx_10_13_x86_64.whl; dracopy-2.0.0-cp312-cp312-macosx_11_0_arm64.whl; dracopy-2.0.0-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl; dracopy-2.0.0-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl; dracopy-2.0.0-cp312-cp312-win32.whl; dracopy-2.0.0-cp312-cp312-win_amd64.whl; dracopy-2.0.0-cp313-cp313-macosx_10_13_x86_64.whl; dracopy-2.0.0-cp313-cp313-macosx_11_0_arm64.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “mesh compression python”
- DracoPyDracoPy is a Python wrapper for Google's Draco mesh compression…
- pyvista-zstdCompress and decompress VTK datasets using Zstandard compression with…
- meshioReads and writes mesh files in dozens of formats (STL, VTK, Gmsh,…
Give your agent the search over MCP, or paste the wish link into any chat.
More Scientific/Engineering packages
NumPy provides an N-dimensional array object and a comprehensive suite of mathematical, linear algebra, Fourier transform, and random number functions for scientific computing in Python.
pandas provides fast, flexible data structures (Series and DataFrame) for loading, cleaning, transforming, and analyzing labeled or relational data in Python.
scipy provides numerical algorithms for mathematics, science, and engineering—including optimization, integration, linear algebra, Fourier transforms, signal and image processing, and ODE solvers—built on numpy arrays.
scikit-learn provides a comprehensive Python library for supervised and unsupervised machine learning, including classification, regression, clustering, dimensionality reduction, and model evaluation tools built on NumPy and SciPy.
Install it if you need to train, evaluate, or deploy supervised or unsupervised learning models.
dill extends Python's pickle module to serialize and deserialize a much wider range of Python objects, including functions, lambdas, classes, and interpreter sessions, to byte streams for storage or network transmission.
Multiprocess is an enhanced fork of Python's standard multiprocessing library that uses dill for better serialization, allowing you to spawn processes with a threading-like API and share complex objects between them.
Install it if you use multiprocessing and encounter pickle serialization limits with lambdas or complex objects.
See also fast-simplification · open3d · open3d-cpu · numpy-stl · plyfile · meshioplusplus · meshio · build123d · pyjpegls