I typically export my bookmarks as JSON from Firefox and use a custom script to loop through and convert each bookmark into HTML nodes. I use JavaScript to expand/hide nodes with buttons (styled with CSS). Overall pretty simple but really sustainable and easy to use IMO ... Pretty proud of it:
https://l-o-o-s-e-d.net/bookmarks
Eventually, I'd like to add "level" markers that give more info about number of levels contained or number of bookmarks therein.