vibetunnel/mac
Peter Steinberger 865858ccac fix: Add missing TestError.skip case to fix Mac CI test failures
The NgrokServiceTests were failing in CI with "cannot find 'TestError' in scope"
because TestError.skip was being used but the skip case was not defined.

- Add TestError.skip(String) case to TestFixtures
- Update NgrokServiceTests to use TestFixtures.TestError.skip for proper namespacing
2025-06-22 07:48:35 +02:00
..
Config move templates 2025-06-21 10:02:31 +02:00
docs arm only 2025-06-21 16:11:34 +02:00
scripts speed up project build by comparing web hash 2025-06-22 07:16:52 +02:00
VibeTunnel stop executing applescript once per second 2025-06-22 07:44:29 +02:00
VibeTunnel.xcodeproj speed up project build by comparing web hash 2025-06-22 07:16:52 +02:00
VibeTunnel.xcworkspace refactor: major project restructuring - move macOS app to mac/ directory 2025-06-20 13:20:01 +02:00
VibeTunnelTests fix: Add missing TestError.skip case to fix Mac CI test failures 2025-06-22 07:48:35 +02:00
.gitignore Burn everything with fire that is not node or swift. 2025-06-21 14:39:44 +02:00
Package.swift Burn everything with fire that is not node or swift. 2025-06-21 14:39:44 +02:00
README.md refactor: major project restructuring - move macOS app to mac/ directory 2025-06-20 13:20:01 +02:00
VibeTunnel-Info.plist refactor: major project restructuring - move macOS app to mac/ directory 2025-06-20 13:20:01 +02:00

VibeTunnel macOS App

This directory contains the macOS version of VibeTunnel.

Quick Start

Building

# Using Xcode
xcodebuild -workspace VibeTunnel.xcworkspace -scheme VibeTunnel build

# Using build script
./scripts/build.sh

Running Tests

xcodebuild -workspace VibeTunnel.xcworkspace -scheme VibeTunnel test

Creating Release

./scripts/build.sh --configuration Release --sign
./scripts/create-dmg.sh build/Build/Products/Release/VibeTunnel.app

Project Structure

mac/
├── VibeTunnel/           # Source code
│   ├── Core/            # Core services and models
│   ├── Presentation/    # Views and UI components
│   └── Utilities/       # Helper utilities
├── VibeTunnelTests/     # Unit tests
├── scripts/             # Build and release scripts
├── docs/                # macOS-specific documentation
└── private/             # Signing keys (not in git)

Scripts

  • build.sh - Build the app with optional signing
  • create-dmg.sh - Create a DMG for distribution
  • release.sh - Full release process
  • monitor-ci.sh - Monitor CI build status
  • sign-and-notarize.sh - Code signing and notarization

Documentation

See docs/ for macOS-specific documentation:

  • Code signing setup
  • Release process
  • Sparkle update framework
  • Development signing

CI/CD

The app is built automatically on GitHub Actions:

  • On every push to main
  • On pull requests
  • For releases (tagged with v*)

See .github/workflows/swift.yml for the build configuration.