Commit Graph

121 Commits

Author SHA1 Message Date
Alejandro Gómez
cc6f8d646b feat(layouts): Phase 1 - workspace layout configuration system
Add per-workspace layout configuration with smart auto-balancing:

**Core Changes:**
- Add LayoutConfig interface to Workspace type with insertionMode, splitPercentage, insertionPosition
- Create layout-utils.ts with smart direction algorithm that auto-balances horizontal/vertical splits
- Update addWindow() to use workspace layoutConfig instead of hardcoded values
- Migrate state from v7→v8, adding layoutConfig to all workspaces with smart defaults

**Smart Direction Algorithm:**
- Analyzes layout tree to count horizontal vs vertical splits
- Automatically balances by favoring the less-common direction
- Defaults to horizontal (row) for first split
- Provides foundation for "Balanced (auto)" insertion mode

**Testing:**
- Add 30 comprehensive tests for layout-utils.ts (tree analysis, smart direction, window insertion)
- Add 30 tests for logic.ts addWindow() with different layout configs (row/column/smart modes)
- Update migration tests to verify v6→v7→v8 and v7→v8 paths

**Migration:**
- v7→v8 adds layoutConfig with defaults: smart mode, 50% split, second position
- All existing workspaces automatically get smart auto-balancing behavior

Implements orthogonal design: layout behavior = workspace settings (not command flags)
2025-12-18 11:59:45 +01:00
Alejandro Gómez
727c38d2ef fix: note reply mentions 2025-12-18 11:32:41 +01:00
Alejandro Gómez
6c6f3728c0 ui: adjust spacing for quote skeletons 2025-12-18 11:10:30 +01:00
Alejandro Gómez
1ebd38dfd3 chore: add todo 2025-12-18 10:59:38 +01:00
Alejandro Gómez
a066284825 chore: petrify 2025-12-18 10:19:52 +01:00
Alejandro Gómez
a7dd4635dc feat: kind schemas and better man pages 2025-12-18 10:18:53 +01:00
Alejandro Gómez
3b06e23686 ui: improve man page layout for options and examples
- Display option flags on separate lines with indented descriptions to prevent overflow
- Parse and separate example commands from their descriptions
- Highlight commands in accent color with muted descriptions below
- Increase spacing between items for better readability
2025-12-18 09:37:14 +01:00
Alejandro Gómez
97c89142ae wip: live video events 2025-12-17 11:44:12 +01:00
Alejandro Gómez
c9a6df928e feat: relay liveness tracking 2025-12-17 10:26:59 +01:00
Alejandro Gómez
8fe0ffd5c3 ui: only show direct replied to 2025-12-17 09:48:11 +01:00
Alejandro Gómez
ce18567900 feat: kind 11 and 1111 renderer, show reply and root 2025-12-16 23:34:28 +01:00
Alejandro Gómez
63121f6233 feat: add title command line flag 2025-12-16 20:50:03 +01:00
Alejandro Gómez
6126f43e34 ui: aspect ratios, url styles in auth prompt 2025-12-16 17:28:50 +01:00
Alejandro Gómez
24d2640774 feat: since and until 2025-12-16 14:15:16 +01:00
Alejandro Gómez
a7059c8e8f feat: outbox relay selection 2025-12-16 12:55:07 +01:00
Alejandro Gómez
6f05f414d3 feat: case insensitive names 2025-12-16 00:07:20 +01:00
Alejandro Gómez
f4a0d5e669 feat: -P filter tag 2025-12-15 23:42:19 +01:00
Alejandro Gómez
390290d2eb wip: skeletons 2025-12-15 22:19:28 +01:00
Alejandro Gómez
aa2e74bcd7 feat: show zapped e and a 2025-12-15 17:57:20 +01:00
Alejandro Gómez
a5d2ccacea fix: don't show copy on single line code samples 2025-12-15 17:57:07 +01:00
Alejandro Gómez
88a6e38ee9 refactor: use applesauce for profile parsing 2025-12-15 17:38:51 +01:00
Alejandro Gómez
78a2deeadd ai: theme 2025-12-15 17:30:18 +01:00
Alejandro Gómez
98723a25aa refactor: consolidate markdown renderer 2025-12-15 16:59:57 +01:00
Alejandro Gómez
001424b611 fix: break long ass links 2025-12-15 16:53:01 +01:00
Alejandro Gómez
6ff877e8a5 refactor: unify nostr markdown rendering 2025-12-15 15:54:45 +01:00
Alejandro Gómez
5dd885b888 feat: community NIPs 2025-12-15 15:42:11 +01:00
Alejandro Gómez
c14fe28281 ui: consistent snippet styles 2025-12-15 13:30:50 +01:00
Alejandro Gómez
f0c2e30add ui: better rec name and icon 2025-12-15 13:19:03 +01:00
Alejandro Gómez
4720861f40 ui: better app name and icon 2025-12-15 13:17:27 +01:00
Alejandro Gómez
d0c8012c2c feat: show article image in detail view 2025-12-15 13:17:01 +01:00
Alejandro Gómez
19cdde0110 feat: syntax highlighting 2025-12-15 13:11:59 +01:00
Alejandro Gómez
dab250260f fix: PR body rendering 2025-12-15 11:36:06 +01:00
Alejandro Gómez
5092a4fe5f fix: URL parsing 2025-12-15 08:44:38 +01:00
Alejandro Gómez
c8a6bfacf4 feat: basic git stuff rendering 2025-12-14 23:57:17 +01:00
Alejandro Gómez
f4d0048b30 ai: claude config 2025-12-14 21:57:17 +01:00
Alejandro Gómez
08ec7831a1 ui: better profile relay indicator 2025-12-14 17:11:47 +01:00
Alejandro Gómez
1debeca501 fix: NIPBadge in KINDS command 2025-12-14 16:56:53 +01:00
Alejandro Gómez
d725579c5c perf: smaller chunks 2025-12-14 16:50:16 +01:00
Alejandro Gómez
bb8a2c2978 fix: revert manual chunks 2025-12-14 16:44:01 +01:00
Alejandro Gómez
9496af6273 feat: better generic event detail relay list and JSON viewer 2025-12-14 16:41:43 +01:00
Alejandro Gómez
e5c871617e chore: cleanup, a11y and state migrations 2025-12-14 16:32:45 +01:00
Alejandro Gómez
f2ffc406d5 fix: use share API for downloads 2025-12-14 16:11:51 +01:00
Alejandro Gómez
e8f9c72be1 fix: pad NIP numbers 2025-12-14 15:35:37 +01:00
Alejandro Gómez
6560dc203c ui: query viewer improvements 2025-12-14 15:34:07 +01:00
Alejandro Gómez
6f17415340 feat: NIPS command 2025-12-14 15:14:14 +01:00
Alejandro Gómez
b8d05e40c7 feat: export to JSONL 2025-12-14 12:21:09 +01:00
Alejandro Gómez
bef7369de9 fix: normalize relay URLs 2025-12-14 12:00:55 +01:00
Alejandro Gómez
33614be77d ui: improve relays view in req viewer 2025-12-14 00:33:25 +01:00
Alejandro Gómez
c21df2b420 ui: friendlier req viewer 2025-12-14 00:07:06 +01:00
Alejandro Gómez
26fc2bf7af fix: edit OPEN 2025-12-13 23:20:00 +01:00