Skip to content


Folders and files

Last commit message
Last commit date

Latest commit


Repository files navigation

FreeCAD Assembly 4 workbench

Current version 0.50.13


This assembly workbench allows to assemble into a single assembly container other FreeCAD objects, and place them relative to the assembly and to each-other. The parts in the assembly can be in the same document as the assembly or in an external document. When parts are modified in their original document, they are instantly updated in the assembly.

An Assembly4 Assembly is a standard FreeCAD App::Part container, therefore it is compatible and can be manipulated with any FreeCAD tool handling App::Part objects. In particular, it can be inserted into another Assembly to create nested assemblies to any level. It can also contain solids, datum objects and sketches. A document can contain only 1 Assembly. Native FreeCAD Part and Body containers can be used as "part" to be inserted.

Parts are placed relative to each-other by matching features inside them. Specifically, in Assembly4, these features are virtual objects called LCS (for Local Coordinate System, also called datum coordinate system) and are attached using FreeCAD's built-in Part::Attacher and ExpressionEngine. No geometry is used to place and constrain parts relative to each other, thus avoiding a lot of the topological naming problems.

Please Note: only Part and Body containers at the root of a document can be inserted. Objects nested inside containers cannot be used directly by Assembly4.

Please Note: objects in the same document as the linked part but outside the App::Part container will not be inserted.


Addon Manager (recommended)

FreeCAD Addon manager status

Assembly 4 is available through the FreeCAD Addon Manager (menu Tools > Addon Manager). It is called Assembly4 in the Addon Repository.

Important Note: Assembly 4 needs FreeCAD v0.19 or above. Assembly4 is not compatible with FreeCAD v0.18 and before.

Important Note: FreeCAD introduced a new data format during the 0.22 development cycle that is incompatible with previous FreeCAD versions : if you open a file made with the latest v0.22 development version with stable v0.21, all attachments are irreversibly lost. This is a FreeCAD regression independent from Assembly4.

Manual Installation

It is possible to install this workbench manually into FreeCAD's local workbench directory. See user instructions

Getting Started

Assembly4 uses extensively FreeCAD's built-in Part::Attacher, and you can find documentation following this link. It is recommended to be familiar with this function to get best usage of this workbebch.

You can get more information in the user instructions, the technical manual, and you can use the provided example assemblies to experiment with this workbench's features. There are also online tutorials :


Please offer feedback or connect with the developers in the Discussions section.

Addon Repository

This addon is hosted on a GitHub repository.

Release notes

Release notes can be found in the file.


LGPLv2.1 (see LICENSE)