dockview is a zero-dependency docking layout manager written in TypeScript that enables developers to create highly dynamic, IDE-like interfaces with draggable panels, tabs, and resizable layouts. It supports multiple layout paradigms, including split views, grid layouts, and dockable panels, allowing complex UI arrangements similar to tools like Visual Studio Code. The library is framework-agnostic at its core, with official bindings for React, Vue, and Angular, as well as support for vanilla TypeScript. Dockview includes advanced features such as floating panels, popout windows, and persistent layout serialization, enabling users to save and restore custom workspace configurations. Its architecture emphasizes performance and flexibility, providing a comprehensive API for programmatic control over layout behavior. The system also supports theming and customization through CSS variables, allowing seamless integration into different design systems.
Features
- Drag-and-drop docking system with tabs and panels
- Support for split views, grids, and floating windows
- Layout serialization and restoration capabilities
- Framework support for React, Vue, Angular, and vanilla TS
- Zero runtime dependencies for lightweight performance
- Extensive API for programmatic layout control