Skip to content

Browser based configurator - #2693

Open
ramkrishna757575 wants to merge 1 commit into
iNavFlight:masterfrom
ramkrishna757575:master
Open

Browser based configurator#2693
ramkrishna757575 wants to merge 1 commit into
iNavFlight:masterfrom
ramkrishna757575:master

Conversation

@ramkrishna757575

Copy link
Copy Markdown

This pull request introduces a comprehensive browser-port dependency audit (BROWSER_PORT_AUDIT.md) and initiates the migration of the application to support browser environments. It documents the current Electron/Node dependencies, proposes browser-compatible replacements, and details the initial implementation of Web Serial support. Additionally, the main entry point in index.html is switched to a browser-specific bootstrap script.

Browser-port audit and migration:

  • Added BROWSER_PORT_AUDIT.md, providing a detailed inventory of Electron/Node dependencies, browser-compatible alternatives, and migration status for serial I/O, filesystem, USB/DFU, dialogs, child processes, networking, and build/runtime boundaries. This document serves as a roadmap and checklist for the browser migration effort.
  • Describes the new Web Serial transport (js/connection/connectionWebSerial.js), its integration, and the platform abstraction layer that enables the app to run in browsers with minimal code changes.
  • Outlines the safe boundary for implementation, ensuring the MSP protocol layer and its consumers remain unchanged during the migration.
  • Documents the current status and next steps, including remaining work for TCP/UDP, SITL, DFU, and file persistence.

Build/runtime entry point update:

  • Changed the main script in index.html from js/configurator_main.js to js/browser-entry.js, ensuring the browser build uses the new platform abstraction and initialization logic.

@qodo-code-review

Copy link
Copy Markdown
Contributor

Qodo reviews are paused for this user.

Troubleshooting steps vary by plan Learn more →

On a Teams plan?
Reviews resume once this user has a paid seat and their Git account is linked in Qodo.
Link Git account →

Using GitHub Enterprise Server, GitLab Self-Managed, or Bitbucket Data Center?
These require an Enterprise plan - Contact us
Contact us →

@github-actions

Copy link
Copy Markdown

Branch Targeting Suggestion

You've targeted the master branch with this PR. Please consider if a version branch might be more appropriate:

  • maintenance-9.x - If your change is backward-compatible and won't create compatibility issues between INAV firmware and Configurator 9.x versions. This will allow your PR to be included in the next 9.x release.

  • maintenance-10.x - If your change introduces compatibility requirements between firmware and configurator that would break 9.x compatibility. This is for PRs which will be included in INAV 10.x

If master is the correct target for this change because it should never be included in any release, no action is needed.


This is an automated suggestion to help route contributions to the appropriate branch.

@sonarqubecloud

Copy link
Copy Markdown

Quality Gate Failed Quality Gate failed

Failed conditions
C Reliability Rating on New Code (required ≥ A)

See analysis details on SonarQube Cloud

Catch issues before they fail your Quality Gate with our IDE extension SonarQube for IDE

@sensei-hacker

sensei-hacker commented Jul 28, 2026

Copy link
Copy Markdown
Member

Do you have a copy up where it can be tested?

Here are some references of recent similar work. We may want to compare and contrast and merge ideas together to come up with the final combined version.

@Scavanger 's similar work:
#2448
Testable at https://inav-configurator.pages.dev/

And the one by @RomanLut :
#2597
Testable at https://romanlut.github.io/inav-configurator/

and @ramkrishna757575 started a version
#2693

one by MakeSomeFakeNews:
#2687

While @Bingo2023 made an Android app:
https://github.com/Bingo2023/inav-configurator-android
Discussion here:
iNavFlight/inav#11711

Overall discussion of the topic here:
#2696

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.

2 participants