Building bespoke dashboards with HTML5, CSS3, Node.js, JavaScript, Tailwind, D3 and Python when the BI tool is not enough.

Sometimes the packaged BI tool is the wrong shape: a customer portal, a 50-inch operations wall, a visualization no chart library draws. Here is a reference architecture for custom dashboards with HTML5, CSS3, Node.js, Tailwind, D3 and Python, and the rules for deciding when to build one.