Skip to content

v0.2.4: Major Migration from Rust/Tauri to Electron#117

Merged
zortos293 merged 40 commits intomainfrom
dev
Feb 16, 2026
Merged

v0.2.4: Major Migration from Rust/Tauri to Electron#117
zortos293 merged 40 commits intomainfrom
dev

Conversation

@zortos293
Copy link
Collaborator

v0.2.4

Summary

This draft release PR merges dev into main for v0.2.4.

This is a major migration release that:

  • moves OpenNOW from the legacy Tauri/Rust stack to an Electron workspace
  • modernizes streaming/input handling and session UX
  • updates CI/CD packaging and runner strategy
  • refreshes docs/branding to match current architecture

Scope

  • 39 commits
  • 88 files changed
  • +23,335 / -33,334 lines

Major Changes

1. Electron workspace migration

  • Added opennow-stable/ app with Electron + React + TypeScript architecture.
  • Added main/preload/renderer split with secure IPC and shared types.
  • Added Electron Vite config and Electron Builder packaging metadata.
  • Added workspace root scripts delegating to opennow-stable.

Key files:

  • opennow-stable/package.json
  • opennow-stable/electron.vite.config.ts
  • opennow-stable/src/main/index.ts
  • opennow-stable/src/preload/index.ts
  • opennow-stable/src/renderer/src/App.tsx

2. Streaming, input, and session UX improvements

  • Implemented/updated GFN auth, CloudMatch, signaling, and subscription logic.
  • Improved keyboard/gamepad input behavior and fullscreen ESC handling.
  • Added session timer and WebRTC time-limit warnings.
  • Improved loading UI, stats overlay, and stream-state interactions.

Key files:

  • opennow-stable/src/main/gfn/auth.ts
  • opennow-stable/src/main/gfn/cloudmatch.ts
  • opennow-stable/src/main/gfn/signaling.ts
  • opennow-stable/src/renderer/src/gfn/webrtcClient.ts
  • opennow-stable/src/renderer/src/components/StreamView.tsx

3. CI/CD and packaging updates

  • Consolidated Electron workflows into auto-build.
  • Migrated supported runners to Blacksmith.
  • Improved caching and lockfile behavior for build performance/stability.
  • Added Linux ARM64 deb packaging fallback using system fpm.

Key file:

  • .github/workflows/auto-build.yml

4. Docs and branding refresh

  • Updated README feature matrix and migration messaging.
  • Added/updated branding assets and support card/banner sections.
  • Updated contributing guidance and repository metadata.

Key files:

  • README.md
  • .github/CONTRIBUTING.md
  • logo.png

5. Legacy stack cleanup

  • Removed legacy Tauri/Rust implementation and old root frontend files.
  • Removed obsolete Flatpak manifests and related legacy build assets.

Removed paths include:

  • src-tauri/**
  • legacy src/** root frontend files
  • flatpak/**

Breaking Changes

  • Tauri runtime/build system removed.
  • Desktop app entrypoint now under opennow-stable.
  • Root-level old Vite/TS frontend files removed.
  • Packaging/release flow now Electron Builder based.

Validation

  • Passed: npm --prefix opennow-stable run typecheck
  • Note: npm --prefix opennow-stable run build failed in sandbox with spawn EPERM (environment restriction), so CI/local unrestricted build should be used as source of truth.

Reviewer Checklist

  • Validate no runtime dependency remains on removed Tauri files.
  • Smoke test stream start/stop, fullscreen, ESC behavior, and shortcuts.
  • Verify CI artifact generation for Windows/macOS/Linux (including ARM64 Linux deb).
  • Confirm README and contribution docs reflect current architecture.
  • Confirm tmp.js is intentional; remove if leftover debug file.

…ad input

Electron 33 + React 18 + TypeScript client built with electron-vite.
Includes complete GFN protocol v3 implementation with proper wrapping
for all input channels (keyboard, mouse, gamepad). Gamepad uses PR
channel with sequence tracking and bitmap-based connected state.
Adds CI workflows for build, release, and bootstrap.
@zortos293 zortos293 changed the title "v0.2.4" V0.2.4:Major-Rust-to-Electron-Migration Feb 16, 2026
@zortos293 zortos293 marked this pull request as ready for review February 16, 2026 21:21
@zortos293 zortos293 changed the title V0.2.4:Major-Rust-to-Electron-Migration v0.2.4: Major Migration from Rust/Tauri to Electron Feb 16, 2026
@zortos293 zortos293 merged commit 616b0ea into main Feb 16, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant