Zero dependency layout manager supporting tabs, groups, grids and splitviews. Supports React, Vue, Angular and JavaScript
Please see the website: https://dockview.dev
- Serialization / deserialization with full layout management
- Support for split-views, grid-views and 'dockable' views
- Themeable and customizable
- Tab and Group docking / Drag n' Drop
- Touch & mobile support
- Popout Windows
- Floating Groups
- Extensive API
- Supports Shadow DOMs
- High test coverage
- Documentation website with live examples
- Transparent builds and Code Analysis
- Security in mind - verified publishing and builds through GitHub Actions
| Package | Description | Version |
|---|---|---|
dockview | JavaScript, zero dependencies, full feature set out of the box | |
dockview-react | React bindings (peer: react 16.8–19) | |
dockview-vue | Vue 3 bindings (peer: vue ≥3.4) | |
dockview-angular | Angular bindings (peer: @angular/core ≥21.0.6) | |
dockview-enterprise | Enterprise features, drop-in superset of dockview (commercial licence) |
npm install dockview # JavaScript
npm install dockview-react # React
npm install dockview-vue # Vue
npm install dockview-angular # Angularimport{DockviewReact,themeDark}from'dockview-react';import'dockview-react/dist/styles/dockview.css';constcomponents={default: (props)=><div>Hello {props.params.title}</div>,};functionApp(){constonReady=(event)=>{event.api.addPanel({id: 'panel_1',component: 'default',params: {title: 'World'},});};return(<DockviewReacttheme={themeDark}onReady={onReady}components={components}/>);}For Vue and Angular examples see the documentation.
This project is a monorepo using Yarn v1 workspaces.
yarn install # Install dependencies
yarn build # Build all packages
yarn test# Run tests
yarn lint # Lint all packages
yarn format # Format all packagesContributions are welcome! Please open an issue or submit a pull request.
This repository contains packages under more than one licence. Everything is MIT
except dockview-enterprise, which is proprietary and governed by a commercial
licence agreement.
See LICENCE.md for the breakdown. Each published package ships
its own LICENCE.md, which is the authoritative licence for that package.
Want to verify our builds? Go here.
