DanFessler / trellis
git clone https://github.com/DanFessler/trellis.git
Fractal layouts for web apps: nest panels to any depth, zoom to the part you need, and keep every view alive.
+1
stars, 24h · #9,401
+~7
stars, 7 days · #10,049
+244
stars, 30 days · #2,098
245
★ total · +3% this week
11
forks · 2 open issues
Star history (as recorded here)
LanguageTypeScript
License—
Created2026-09-26 (26d ago)
Last push20d ago
Watchers1
OwnerUser
Links
- GitHub: github.com/DanFessler/trellis
- Homepage: https://trellisui.com
- Releases · Issues · Hacker News mentions
README excerpt
Trellis Trellis is a layout engine for web apps where users arrange their own workspace. Panels nest inside panels as deep as users like, and the view zooms to whichever part they need, with every view kept mounted. Users can also drag, split, float and hide tabbed panels. See the idea in the 2-minute video that started the project. ## Packages | Package | | | ------------------------------------------------- | -------------------------------------------------------------------------- | | `@danfessler/trellis` | The framework-agnostic core: model, runtime and styles. | | `@danfessler/trellis-react` | React components and hooks. | | `@danfessler/trellis-element` | ` ` custom element, including a standalone script build. | ## Quick start (React) Install the core and the React adapter: [code] Declare the view types, then the initial layout: [code] ## Quick start (vanilla) Install the core: [code] Create a workspace in an element: [code] ## Documentation - Introduction and Installation - Quick starts for React and vanilla JavaScript - Concepts - Reference: React API, Core API and Web component - Recipes and FAQ - Migrating from react-dockable ## Development [code] The examples live in `examples/`: | Example | Shows | Run | | ----------------------------- | ------------------------------------------------------------------------------------------------------ | ---------------------------------------- | | `paint` | An art program: documents on the stage, tool palettes, floating navigator, close guards, persistence | `npm run dev -w trellis-example-paint` | | `ide` | An editor with explorer, terminal, live-preview iframe, command palette and status bar | `npm run dev -w trellis-example-ide` | | `desktop` | A desktop environment built from public primitives, with stage floats, free zoom, a dock and a minimap | `npm run dev -w trellis-example-desktop` | | `vanilla` | A framework-free ops dashboard, plus a ` ` page declared in HTML | `npm run dev -w trellis-example-vanilla` | ## License Trellis is free for non-commercial use. Commercial use requires an active GitHub Sponsorship at the applicable tier (organizations of 10 or fewer developers), and larger organizations need an enterprise license. See LICENSE.md.