vibetunnel/web
Mario Zechner 18a28992df Add comprehensive frontend component documentation
- Document all frontend components with JSDoc headers describing their purpose and events
- Add @fires and @listens tags for all component events with detailed parameter descriptions
- Update spec.md with complete Component Event Architecture section
- Add shared terminal-text-formatter.ts for consistent text formatting between client/server
- Implement event-driven activity detection replacing polling-based approach
- Add content-changed event to vibe-terminal-buffer for activity monitoring
- Remove ESC prompt detection in favor of general activity detection
- Add plain text endpoint with optional style formatting (/api/sessions/:id/text?styles)

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-21 23:14:30 +02:00
..
scripts Make scripts ugly but resilient 2025-06-21 18:08:00 +02:00
src Add comprehensive frontend component documentation 2025-06-21 23:14:30 +02:00
.gitignore Clean up build system and remove unused dependencies 2025-06-21 17:04:52 +02:00
.prettierignore lint web 2025-06-17 01:03:37 +02:00
.prettierrc.json lint web 2025-06-17 01:03:37 +02:00
build-native.js Bun deleted, Nodejs is new king. Xcode not yet updated. 2025-06-21 21:21:11 +02:00
CLAUDE.md CLAUDE.md clean-ups 2025-06-21 15:10:17 +02:00
eslint.config.js lint web 2025-06-17 01:03:37 +02:00
package-lock.json Bun deleted, Nodejs is new king. Xcode not yet updated. 2025-06-21 21:21:11 +02:00
package.json Clean up build system and remove unused dependencies 2025-06-21 17:04:52 +02:00
postcss.config.js Add complete web frontend for terminal multiplexer 2025-06-16 00:29:33 +02:00
README.md Update docs to reflect Node.js SEA instead of Bun 2025-06-21 21:49:12 +02:00
spec.md Add comprehensive frontend component documentation 2025-06-21 23:14:30 +02:00
tailwind.config.js Web design tweaks 2025-06-20 06:59:22 +02:00
tsconfig.client.json Reorganize server structure for clarity 2025-06-21 16:44:56 +02:00
tsconfig.json Add complete web frontend for terminal multiplexer 2025-06-16 00:29:33 +02:00
vitest.config.ts Clean up build system and remove unused dependencies 2025-06-21 17:04:52 +02:00

VibeTunnel Web

Web terminal interface and server for VibeTunnel.

Quick Start

Production users: Use the pre-built VibeTunnel executable from the main app.

Development

npm install
npm run dev        # Watch mode: server + client
npm run dev:client # Watch mode: client only (for debugging server)

Open http://localhost:3000

Build Commands

npm run clean      # Remove build artifacts
npm run build      # Build everything (including native executable)
npm run lint       # Check code style
npm run lint:fix   # Fix code style
npm run typecheck  # Type checking
npm run test       # Run all tests (unit + e2e)
npm run format     # Format code

Production Build

npm run build          # Creates Node.js SEA executable
./native/vibetunnel    # Run standalone executable (no Node.js required)

Architecture

See spec.md for detailed architecture documentation.

Key Features

  • Terminal sessions via node-pty
  • Real-time streaming (SSE + WebSocket)
  • Binary-optimized buffer updates
  • Multi-session support
  • File browser integration