FreeCAD, like many modern design applications such as Revit or CATIA, is based on the concept of Workbench. A workbench can be considered as a set of tools specially grouped for a certain task. In a traditional furniture workshop, you would have a work table for the person who works with wood, another one for the one who works with metal pieces, and maybe a third one for the guy who mounts all the pieces together.
In FreeCAD, the same concept applies. Tools are grouped into workbenches according to the tasks they are related to.
When you switch from one workbench to another, the tools available on the interface change. Toolbars, command bars and possibly other parts of the interface switch to the new workbench, but the contents of your scene doesn't change. You could, for example, start drawing 2D shapes with the Draft Workbench, then work further on them with the Part Workbench.
Note that sometimes a Workbench is referred to as a Module. However, Workbenches and Modules are different entities. A Module is any extension of FreeCAD, while a Workbench is a special GUI configuration that groups some toolbars and menus. Usually every Module contains its own Workbench, hence the cross-use of the name.
The following workbenches are available on every FreeCAD installation:
- Std Base. This is not really a workbench, but this category serves to collect all "standard" commands and tools of the system which can be used in all workbenches.
- The Arch Workbench for working with architectural elements.
- The Complete Workbench hold all commands and features from all the modules and workbenches which met certain quality criteria.
- The Draft Workbench contains 2D tools and basic 2D and 3D CAD operations.
- The Drawing Workbench for displaying your 3D work on a 2D sheet.
- The FEM Workbench provides Finite Element Analysis (FEA) workflow.
- The Image Workbench for working with bitmap images.
- The Inspection Workbench is made to give you specific tools for examination of shapes. It is still in development.
- The Mesh Workbench for working with triangulated meshes.
- The OpenSCAD Workbench for interoperability with OpenSCAD and repairing Constructive Solid Geometry (CSG) model history.
- The Part Workbench for working with CAD parts.
- The Part Design Workbench for building Part shapes from sketches.
- The Path Workbench is used to produce G-Code instructions. It is still in a stage of development. Only basic functions in 0.16
- The Plot Workbench is used to edit and save output plots created from other modules and tools.
- The Points Workbench for working with point clouds.
- The Raytracing Workbench for working with ray-tracing (rendering)
- The Reverse Engineering Workbench is intended to give you specific tools to convert shapes/solids/meshes into parametric FreeCAD-compatible features. It is still in development.
- The Robot Workbench for studying robot movements.
- The Ship Workbench FreeCAD-Ship works over Ship entities, that must be created on top of provided geometry.
- The Sketcher Workbench for working with geometry-constrained sketches.
- The Spreadsheet Workbench for creating and manipulating spreadsheet data.
- The Start Center Workbench allows you to quickly jump to one of the most common workbenches.
- The TechDraw Workbench is the more advanced and feature-rich successor of Drawing
- The Test Framework Workbench is for debugging FreeCAD.
- The Web Workbench provides you with a browser window instead of the 3D-View within FreeCAD.
The following workbenches are still included in the base installation for compatibility purposes, but they should no longer be used.
- The Complete Workbench holds all commands and features from all the modules and workbenches which met certain quality criteria. obsolete in version 0.17
- The Drawing Workbench was used for displaying your 3D work on a 2D sheet but has now been deprecated, it is still needed to read old FreeCAD files that contain a Drawing object originally made with this workbench. See TechDraw Workbench, which is a more advanced replacement. obsolete in version 0.17
FreeCAD workbenches are easy to program in Python, there are therefore many people developing additional workbenches outside of the FreeCAD main development area.
New workbenches are always in development, stay tuned!