Addon

Introduction
In FreeCAD and in this documentation, an addon is any component that is not part of the base FreeCAD installation, but that can be added to the system by certain methods.

There are two types of addons.
 * Macros: short snippets of Python code that provide a new tool or functionality.
 * External workbenches: collections of tools programmed in Python or C++ that extend FreeCAD in an important way.

Macros usually start as a way to simplify or automate the task of drawing or editing a particular object. If many of these macros are collected inside a directory, the entire directory may be distributed as a new workbench.

In other words, macros and workbenches are essentially the same thing, pieces of code that extend the base installation. Macros are usually short utilities focused on a single task, while workbenches are collections of organized tools and graphical interfaces to perform related tasks.

If a workbench is sufficiently developed and is well documented, it may be included as one of the base workbenches in FreeCAD.

Installation
Starting from FreeCAD 0.17, the recommended way to install addons is with the Addon Manager.

Manual installation is still possible.
 * How to install macros
 * Installing more workbenches