- Foldable left panel (user profile) and right panel (task details) - Clicking a task in the list or graph node selects it and shows details - Both views (task list + graph) always mounted via absolute inset-0 for correct canvas dimensions; tabs toggle visibility with opacity - Graph node selection animation: other nodes repel outward (charge -600), then selected node smoothly slides to center (500ms cubic ease-out), then charge restores to -120 and graph stabilizes - Graph re-fits on tab switch and panel resize via ResizeObserver - Fix UUID string IDs throughout (backend returns UUIDs, not integers) - Add TaskDetailPanel, UserPanel components - Add CLAUDE.md project documentation Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
indent-string 
Indent each line in a string
Install
$ npm install indent-string
Usage
const indentString = require('indent-string');
indentString('Unicorns\nRainbows', 4);
//=> ' Unicorns\n Rainbows'
indentString('Unicorns\nRainbows', 4, {indent: '♥'});
//=> '♥♥♥♥Unicorns\n♥♥♥♥Rainbows'
API
indentString(string, [count], [options])
string
Type: string
The string to indent.
count
Type: number
Default: 1
How many times you want options.indent repeated.
options
Type: object
indent
Type: string
Default: ' '
The string to use for the indent.
includeEmptyLines
Type: boolean
Default: false
Also indent empty lines.
Related
- indent-string-cli - CLI for this module
- strip-indent - Strip leading whitespace from every line in a string
License
MIT © Sindre Sorhus