Packages
COMPAS is a core library and packages for specific kinds of work. Start from what you want to do: each pathway names the packages to combine, what each one contributes, and work that was built that way.
Show a model in the browser, or turn it into a configurator
Put a model in front of a client in a web browser, with no CAD software on their side, and add sliders and buttons that rebuild the geometry, so a parametric model becomes a small app you can build into your own website.
- compas_threejs 1.1.1
Runs a browser viewer for COMPAS geometry from Python, with sliders, buttons, menus and fields that call back into your script.
- compas_pb 1.2.0
Serializes COMPAS data with Protocol Buffers, the format the viewer and its web clients exchange.
- compas_threejs_ts 1.3.0
Embeds the same viewer in your own web app, as a TypeScript library.
- compas_pb_ts 3.0.0
Reads and writes COMPAS data in TypeScript, so a web app and Python exchange the same geometry.
pip install compas_threejsnpm install @compas-dev/compas-threejs-ts @gramaziokohler/compas-pb-ts
Plan and run robotic fabrication
Model the robot cell, plan the robot's motion, and send it to the controller of a real robot.
- compas_robots 1.0.1
Describes robots, their links, joints and geometry, as COMPAS data.
- compas_fab 2.0.1
Plans the robot's motion for a fabrication task, through planning backends such as ROS and MoveIt.
- compas_rrc 2.0.0
Sends the motion to ABB robots and controls them online from Python.
pip install compas_robots compas_fab compas_rrcBuilt this way
- Semiramis

Tech Cluster Zug, Switzerland · 2022
- Impact Printing

ETH Zurich, Switzerland · 2024
- Tor Alva

Mulegns, Switzerland · 2025
3D-print with robots
Slice a shape into print paths and stream them to the robot that prints it.
- compas_slicer 0.7.0
Turns a shape into print paths for robotic 3D printing, planar or following the surface.
- compas_rrc 2.0.0
Streams the paths to an ABB robot and controls the print.
pip install compas_slicer compas_rrcBuilt this way
- Eggshell Pavilion

Vitra Design Campus, Weil am Rhein, Germany · 2022
- Fluid Forms

ETH Zurich, Switzerland · 2022
- Gelateria Mulegns

Mulegns, Switzerland · 2025
Design and fabricate timber structures
Model beams and their joints, generate the data for CNC machines, and guide the assembly.
- compas_timber 2.2.0
Models beams and their joints, and generates machine-agnostic fabrication data for CNC machines.
- compas_cadwork 1.0.1
Connects the timber model to cadwork, the CAD software of timber construction.
- compas_xr 1.0.0
Guides the people assembling the structure with augmented reality.
pip install compas_timber compas_cadwork compas_xrBuilt this way
- HARDLEAF

Quartiergarten Hard, Zürich, Switzerland · 2026
- Caschlatsch

Disentis/Mustér, Switzerland · 2024
Guide assembly with augmented reality
Bring the digital model to the people building, so they see where each element goes and how far the work has come.
- compas_xr 1.0.0
Shares the model with mobile devices for human–machine collaborative assembly.
- compas_timber 2.2.0
Provides the model of the elements to assemble, when the structure is timber.
pip install compas_xr compas_timberBuilt this way
- Caschlatsch

Disentis/Mustér, Switzerland · 2024
- Dafne's Skin

Triennale Milano, Milan, Italy · 2025
- Sybil

Ars Electronica, Linz, Austria · 2026
Form-find shells, vaults and cable nets
Find structural forms in equilibrium, from funicular vaults in compression to cable nets in tension.
- compas_tna 0.9.0
Finds funicular forms for vaults and shells in compression, with Thrust Network Analysis.
- compas_fd 0.5.4
Form-finds cable nets and membranes with the force density method, under constraints.
- compas-FoFin 0.15.3
Brings form finding into Rhino as a plugin, for tension, compression and mixed structures.
pip install compas_tna compas_fdBuilt this way
- HiLo

NEST, Dübendorf, Switzerland · 2021
- KnitCandela

MUAC, Mexico City · 2018
- Striatus

Venice, Italy · 2021
Design stable block assemblies
Model an assembly of discrete blocks and check that it stands.
- compas_assembly 0.7.1
Represents an assembly of blocks and the interfaces between them.
- compas_cra 0.8.0
Checks the stability of complex block assemblies with coupled rigid-block analysis.
- compas_rbe 0.1.2rc0
Computes the equilibrium of assemblies of rigid blocks.
pip install compas_assembly compas_cra compas_rbeBuilt this way
- Striatus

Venice, Italy · 2021
Work with solids, NURBS and meshes anywhere
Use robust geometry kernels from plain Python, with or without a CAD application.
- compas_occ 1.5.0
Solid modelling and NURBS with the Open CASCADE kernel.
- compas_cgal 0.10.0
Robust mesh operations, such as booleans and remeshing, from CGAL.
- compas_gmsh 0.4.6
Meshes geometry with Gmsh, for example for finite element analysis.
- compas_nurbs 0.2.0
NURBS curves and surfaces for COMPAS.
pip install compas_occ compas_cgal compas_gmsh compas_nurbsBuilt this way
- Acoustic Panel System

Immersive Design Lab, ETH Zurich, Switzerland · 2021
All packages
How the pieces fit together, from the core library down: every package builds on the core, and on the tiers above it.
Release, CI and roadmap data for every repository lives in Mission Control, updated 11 Oct 2026.
58 of 58 packages. Point at one to see what it builds on and what builds on it.
Core
The core library of the framework
Foundation
Geometry and data libraries
Domain extensions
Packages for a discipline
- compas_3gs0.6.0
- compas_ags1.3.3
- compas_assembly0.7.1
- compas_bender0.1.1
- compas_cadwork1.0.1
- compas_cem0.8.6
- compas_cnc0.1.1
- compas_cra0.8.0
- compas_dem0.6.0
- compas_dr0.3.1
- compas_eve2.4.0
- compas_fab2.0.1
- compas_fd0.5.4
- compas_fea20.2.1
- compas_lca1.0.2
- compas_lmgc900.1.11
- compas_model0.9.3
- compas_nest0.1.1.post5
- compas_rbe0.1.2rc0
- compas_robots1.0.1
- compas_rrc2.0.0
- compas_slicer0.7.0
- compas_soundscape
- compas_timber2.2.0
- compas_timber_pb0.2.0
- compas_tna0.9.0
- compas_tno0.4.0
- compas_xr1.0.0
- digital_casting_system0.1.5
- easyhops
- jax_fdm0.14.1
Visualizers
Viewers, plotters and notebooks
Applications
End-user tools
Dev tooling
Templates, build tooling and shared infrastructure for writing COMPAS packages