There is a XAML Control called the VariableSizedWrapGrid which neatly arranges different size items within it.
“Provides a grid-style layout panel where each tile/cell can be variable size based on content”
Unfortunately this control is not available in WinJS, only XAML, but I would like to replicate it. Any ideas on how this would best be replicated in an HTML5/JS Metro app?
http://msdn.microsoft.com/en-us/library/windows/apps/xaml/hh969155
The WinJS.UI.ListView control supports “Variable Sized” items, but it’s quite complex (Details at the end of this article).
However, at a more basic layout level, you can try using a flex box. I dont think it’s quite the same match for layout, but it should enable you to get close. Details on the different patterns is here, and a nice hands-on is here (view in IE)