I made this template for web development in Nim, but I honestly haven't used it in awhile.
I achieved live-reloading by compiling the code to render views as a dynamic library. Then, whenever a new request comes in, I check if the views have been edited, recompile, and swap out the dynamic library.
This is the most relevant aspect of the code for live-reloading: https://github.com/Uzo2005/nimWebDevStarterTemplate/blob/d1152518a87fe799bed5e9f2c873056a58adf1de/server.nim#L69