SmartMesh is a generic tool to control unstructured triangular meshes. Using a Delaunay mesh generator, the geometric domain is discretized with unstructured triangles. This initial mesh is used to compute geometric domain characteristics such as boundary curvature, distance of a vertex to a boundary, distance between two boundaries, etc. These geometric characteristics are transformed into size tensors at each mesh vertex by functions specified by the user through an external file. Finally, an adapted mesh is create using the size tensors computed on the initial mesh. Examples are provided for inviscid, viscous and turbulent flows for internal and external geometries.