FreeCAD is a general purpose 3D CAD modeler, aimed at mechanical engineering and product design, but also fits in a wider range of uses around engineering, such as architecture or other engineering specialties. Optional dependency: graphviz