Based on Blend4Web's normal editor - https://www.blend4web.com
Standalone version fitting in a single file, and upgraded to work in Blender 3.1.2
For the 2.79 standalone version, use https://github.com/Dragorn421/blender-normal-editor/blob/7f98e7b7fc1e5728ad8239f49d803c4981d40e44/normal_editor.py
Features: