name: Build Electron Apps on: workflow_dispatch: push: branches: ["main", "electron"] paths: - 'frontend/**' - 'package.json' - 'package-lock.json' - 'frontend/electron/**' jobs: build: name: Build (${{ matrix.os }}) runs-on: ${{ matrix.os }} strategy: fail-fast: false matrix: os: [ubuntu-latest, macos-latest, windows-latest] steps: - name: Checkout uses: actions/checkout@v4 - name: Setup Node.js uses: actions/setup-node@v4 with: node-version: '24' - name: Install root deps (no scripts) run: npm install --ignore-scripts --no-audit --no-fund - name: Install Electron Forge deps run: npm run frontend:electron:dependencies - name: Build Electron app run: npm run build:electron - name: Upload artifact uses: actions/upload-artifact@v4 with: name: fromchat-${{ runner.os }} path: | frontend/electron/forge/out/** if-no-files-found: error