I think you are just overcomplicating a simple task.
All you need is static HTML pages, and dynamic data coming from a JSON file.
In your static HTML pages use serverside includes for common elements - navbar, sidebar, footer. Then you have it in a separate file which can be changed and changes will be applied to all the pages.
Content, separated from design is in a JSON file and you put your dynamic bindings in the static HTML pages. As soon as you change/update the JSON file the content is updated on your pages.
No complicated build scripts are required, no database setup is required - just your static HTML files and JSON data bindings in there.