Registry / data / compas

compas

JSON →
library2.15.1pypypi✓ verified 86d ago

COMPAS is an open-source, Python-based framework for computational design and digital fabrication. It provides data structures, algorithms, and utilities for geometry processing, topology optimization, and robotic assembly. Current version 2.15.1 supports Python >=3.9, with a stable release cadence.

pip install compas
INSTALL
IMPORT
SIG · COMPAS
C
compas
datapythonv2.15.1
Install
9.6s avg
Import
1460ms
Disk
267MB
Pass rate
10/ 10
Env Coverage10 / 10
glibc
3.93.13
musl
3.93.13
Install & Compatibility
Where this runs
tested against v2.15.1 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
py 3.103.95 runs
installs and imports cleanly · install 0.0s · import 1.494s · 265.7MB
glibc
py 3.103.95 runs
installs and imports cleanly · install 9.6s · import 1.426s · 256MB
267MB installed
● package 267MB
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

Box
from compas.geometry import Box
from compas.datastructures import Box
Box is a geometry primitive, not a datastructure.
Network
from compas.datastructures import Network
from compas import Network
Network is in compas.datastructures.
trimesh_remesh
from compas.geometry import trimesh_remesh
from compas.topology import trimesh_remesh
Function moved to compas.geometry in recent versions.

Creates a 3D box and visualizes it using COMPAS View2.

from compas.geometry import Box from compas_view2.app import App box = Box(1, 2, 3) viewer = App() viewer.add(box) viewer.show()
Debug
Known issues
gotchaCOMPAS depends on a C++ backend (compas_cgal) for some geometry operations; must be installed separately.
fix
pip install compas_cgal
affects: >=2.0
deprecatedThe compas_rhino package is deprecated and replaced by compas_view2 for Rhino integration.
fix
Use compas_view2 instead.
affects: >=2.13
gotchaIn version 2.x, many geometry functions moved from compas.topology to compas.geometry. Old imports may still work but raise deprecation warnings.
fix
Update imports to compas.geometry.
affects: >=2.0
breakingThe Point class attribute names changed: 'x','y','z' are now 'xy','yz','zx' for coordinate arrays.
fix
Access coordinates via .x, .y, .z (not .xy).
affects: >=2.15
Errors
Common errors & fixes
ModuleNotFoundError: No module named 'compas_view2'
Missing optional viewer package.
fix
pip install compas_view2
ImportError: cannot import name 'Box' from 'compas.datastructures'
Incorrect import path for Box.
fix
from compas.geometry import Box
AttributeError: 'Box' object has no attribute 'xy'
Outdated attribute access pattern.
fix
Use box.x, box.y, box.z instead of box.xy.
Upgrade
Version history
2.15.1latest on PyPI · released Mar 19, 2026
Audit
Dependencies
numpyrequiredCore numeric and array operations.
scipyoptionalAdvanced algorithms for optimization, geometry, and statistics.
matplotliboptionalVisualization and plotting.
compas_view2optionalInteractive 3D viewer (separate package).
Agent activity
19 hits · last 30 days
node
16
OpenAI (training)
1
Resources
compas — pip install compas · libregistry