Project with geometry nodes, that detects silhouette and sharp edges and highlights them.
Firstly, download outlines.blend file, since there is not easy way to share geometry nodes.
When you open the file, you will see something like this:

This is an example of things, my project is capable of - highlighting sharp edges and silhouettes.
Please, direct your attention to an object named outlineGenerator.

This is an object responsible for generating outlines - it transforms its mesh to match desired outlines.
If you open up geometry nodes of this object (outlineGenerator) you will see all the geometry nodes:

Take a look on geometry nodes on the left site of nodes network - you will see pretty customizable input fields:

Collection to be outlined, everything outside will be ignored.
Camera used to detect silhouette even based on projection type.
Angle between faces, bellow which will be edge highlighten.
Material used to create lines (i recommend one made from emission shader).
Thickness of outline lines.
Do not change transform of outlineGenerator object, because it can ruin everything.
