MSBLayout is a layout manager for Java AWT and Swing that combines the nested-boxes approach of BoxLayout with flexible constraints as used by GridBagLayout. A concise API with good defaults minimizes the code required to get the layout you want. MSBLayout makes it easy to align and justify components and to synchronize their sizes. Gaps between components can be inserted automatically. Optimized resizing behaviour keeps your dialogs looking good when displayed larger or smaller than their preferred sizes. The API is also well suited for constructing layouts dynamically at run-time.