Commit graph

27 commits

Author SHA1 Message Date
Peter Steinberger
b22d8995dd
Add comprehensive server tests and switch to Biome linter (#73) 2025-06-24 18:51:38 +02:00
Peter Steinberger
7e4f5ab8c5 Tauri fixes 2025-06-23 18:36:54 +02:00
Peter Steinberger
b35c4a0a69 tauri: settings work 2025-06-23 17:28:30 +02:00
Peter Steinberger
2b611a5797 Work on Tauri 2025-06-23 17:16:29 +02:00
Peter Steinberger
2af9257562 Work on Tauri settings 2025-06-23 16:56:02 +02:00
Peter Steinberger
530109fa4d Add Slack notifications for CI results
- Notify on all main branch pushes and PR builds
- Include job status, commit info, and failure details
- Setup guide in .github/SLACK_SETUP.md
2025-06-23 15:19:14 +02:00
Peter Steinberger
531a8a75da Tauri updates, tests, linter, more fetat parity 2025-06-23 14:58:10 +02:00
Peter Steinberger
806b931980 fix tauri compile 2025-06-23 14:58:10 +02:00
Peter Steinberger
e526d18959 tauri run fixes 2025-06-23 06:28:38 +02:00
Peter Steinberger
ed8c5b70cf Tauri migration to node 2025-06-23 06:28:38 +02:00
Mario Zechner
dcf080d59d Tauri prerequistis documented. 2025-06-23 06:08:52 +02:00
Peter Steinberger
19655a48a9 Update Tauri app 2025-06-23 05:51:32 +02:00
Peter Steinberger
88de777b65 feat(tauri): Port all Mac app features to Tauri implementation
- Add session detail windows with dedicated view per session
- Enhance menu bar to show clickable session list (up to 5 sessions)
- Implement terminal window focus using AppleScript on macOS
- Add project credits to welcome flow
- Fix compilation errors in tray_menu.rs

All Mac app features are now available in the Tauri version, achieving
full feature parity while maintaining Tauri's additional capabilities.
2025-06-23 04:07:16 +02:00
Peter Steinberger
507b4bb474 feat(tauri): Remove recording feature and fix UI issues
- Remove entire recording/cast functionality from Tauri app
- Fix settings window UI issues:
  - Remove black line below macOS title bar
  - Increase window size to 1200x800 for two-column display
  - Remove Feature Flags section from debug tab
  - Fix System Paths to show actual paths
  - Fix Developer Tools buttons functionality
  - Remove non-existent API Testing and Terminal Colors sections
- Fix server URLs to use 127.0.0.1 instead of localhost
- Prevent main window from showing on startup (app runs in tray only)
- Update menu handlers to open dashboard in browser
- Fix server restart logic to properly handle app handle
2025-06-23 04:07:16 +02:00
Peter Steinberger
47320c2151 feat(tauri): Redesign settings window with Electron-style layout
- Implement left sidebar navigation matching Electron app design
- Add dark/light theme support with CSS variables
- Increase default window size to 950x720 for better layout
- Remove duplicate "Preferences" title, keep only macOS native title
- Add glassmorphism effects and smooth animations
- Update color scheme to use VibeTunnel green (#10b981)
- Add team credits in About section
- Improve responsive design for settings cards
- Add theme-aware styling for all UI elements
2025-06-23 04:07:16 +02:00
Peter Steinberger
29eb1c2a6a feat(tauri): Enhance main window UI and improve server startup
- Add polished main window UI with dashboard access and status checking
- Fix Unix socket server initialization to handle async runtime properly
- Serve web assets from the server for browser dashboard access
- Add server status monitoring and real-time updates
- Improve error handling and user feedback
2025-06-23 04:07:16 +02:00
Peter Steinberger
1ba9bf1d30 feat(tauri): Add Unix socket server and enhanced settings UI
- Add Unix socket server implementation for IPC communication
- Enhance settings.html with improved UI and animations
- Add terminal color preferences support
- Improve tray menu with recent connections
- Add state management for connected clients
- Fix various lint warnings and improve code quality
2025-06-23 04:07:16 +02:00
Peter Steinberger
f67891e9ae feat(tauri): Port Mac app features to Tauri implementation
This commit adds feature parity between the Mac and Tauri apps:

High Priority Features:
- Enhanced welcome flow with 6 pages (already existed)
- Menu bar enhancements with session counter and server status
- Single instance enforcement using tauri_plugin_single_instance

Medium Priority Features:
- Window centering and management improvements
- Application mover functionality with dialog prompts
- Terminal session activity tracking with real-time updates

Additional Improvements:
- Added keychain integration for secure password storage
- Updated settings with prompt_move_to_applications field
- Fixed compilation errors in app_mover and terminal spawn service
- Enhanced tray menu to dynamically update session count
- Improved main window handling with proper close event management
- Added comprehensive README explaining Tauri development workflow

The Tauri app now provides the same core functionality as the native Mac app while maintaining cross-platform compatibility.
2025-06-23 04:07:16 +02:00
Peter Steinberger
53a5af9fc4 feat(tauri): Enhance UI to match Mac app with animations and polish
- Enhanced settings UI with hover effects, animations, and visual polish
- Added floating and glow animations for app icon in About tab
- Implemented animated status indicators with pulse effects
- Added ripple effects for buttons and smooth transitions
- Expanded welcome screen from 4 to 7 pages matching Mac app flow
- Added VT Command installation page with CLI status
- Added permissions request page with proper UI
- Added terminal selection page with hover effects
- Added dashboard protection page for security setup
- Enhanced page indicators with pulse animations
- Improved copy button with visual state transitions
- Added success/error status dots with animations
- Polished permission UI with checkmark animations
- Enhanced dark/light mode color definitions
- Added smooth hover effects throughout all UI components

This brings the Tauri app to feature parity with the Mac app's UI/UX.
2025-06-23 04:07:16 +02:00
Peter Steinberger
5d3576a205 feat: Add Rust formatter and linter configuration, fix warnings
- Add rustfmt.toml with comprehensive formatting rules
- Add clippy.toml with linting configuration
- Add .cargo/config.toml with clippy warning flags
- Fix unused imports and variables warnings
- Connect unused functions in terminal.rs, server.rs, tray_menu.rs, and session_monitor.rs
- Add proper error handling and cleanup on app quit
- Apply formatting to all Rust code files
- Ensure feature parity with Mac app implementation

This improves code quality, consistency, and maintainability of the Tauri app.
2025-06-23 04:07:16 +02:00
Peter Steinberger
0d9232574c feat(tauri): Add Rust linting and formatting configuration
- Add .cargo/config.toml with comprehensive clippy warnings
- Add clippy.toml with custom thresholds for code complexity
- Add rustfmt.toml with formatting rules for consistent code style
2025-06-23 04:07:16 +02:00
Peter Steinberger
c9933c896e fix: Remove unused imports to fix compilation warnings 2025-06-23 04:07:16 +02:00
Peter Steinberger
b0e488ad7a refactor: Move public directory out of src-tauri
- Move all public files from tauri/src-tauri/public/ to tauri/public/
- Update tauri.conf.json to remove public/** from resources
- Update file dialog to use download directory instead of blocking API
- Add new modules to lib.rs (app_mover, terminal_spawn_service, fs_api)
- Update app_mover and terminal integrations implementations
2025-06-23 04:07:16 +02:00
Peter Steinberger
1a7ccd6082 refactor: Remove server mode setting as Go is now the only supported server
- Remove server_mode field from AdvancedSettings struct
- Remove server mode handling from update_setting command
- Remove server mode display from settings UI debug tab
- Simplify server status display to only show running state and port
2025-06-23 04:07:16 +02:00
Peter Steinberger
2b5060e75f feat(tauri): Major refactoring with enhanced features and managers
- Add comprehensive manager system for various features:
  - Notification manager for in-app notifications
  - Permission manager for system permissions
  - Update manager for app updates
  - Backend manager for server backend management
  - Debug features manager for debugging tools
  - API testing manager for API test suites
  - Auth cache manager for credential caching
  - Terminal integrations manager for terminal emulator support
  - Session monitor for tracking active sessions
  - Port conflict resolver for port management
  - Network utilities for network information
  - TTY forward manager for TTY forwarding
  - Cast manager for terminal recording
  - App mover for macOS app location management
  - Terminal spawn service for launching terminals
  - File system API for file operations

- Add settings UI pages (settings.html, server-console.html)
- Update tauri.conf.json with new configuration
- Enhance server implementation with better state management
- Add comprehensive command system for all managers
- Update dependencies in Cargo.toml
- Add welcome screen manager for onboarding
- Implement proper state management across all components
2025-06-23 04:07:16 +02:00
Peter Steinberger
18f724ae22 feat(tauri): Add Mac-like welcome screen with light/dark mode support
- Create welcome.html with 4-page onboarding flow
- Support system light/dark mode with appropriate color schemes
- Add smooth page transitions and keyboard navigation
- Include finish button that closes the welcome window
- Copy app icon to public folder for welcome screen
- Update tauri.conf.json to include public folder resources
2025-06-23 04:07:16 +02:00
Peter Steinberger
cd7f9c4cb9 feat: Add standalone Tauri app in /tauri folder
This commit adds the Tauri desktop app as a completely separate project
in the /tauri folder without modifying anything in the web project.

- Created /tauri folder with standalone Tauri system tray application
- Configured as menu bar/system tray app (matching Mac app architecture)
- Runs embedded HTTP server on port 4020
- Opens web dashboard in default browser
- No embedded web view or frontend code
- Minimal package.json with only Tauri CLI dependency

The web folder remains completely untouched, ensuring clean separation
between the web and desktop projects.
2025-06-23 04:07:16 +02:00