Skip to content

Add GinanTauri desktop application - #208

Open
PressJump wants to merge 3 commits into
GeoscienceAustralia:mainfrom
ginan-techlauncher26:ginan-tauri
Open

PressJump wants to merge 3 commits into
GeoscienceAustralia:mainfrom
ginan-techlauncher26:ginan-tauri

Conversation

@PressJump

Copy link
Copy Markdown

This is the work of the ANU TechLauncher 2026 Ginan team: PressJump (@PressJump), with co-authors Raj Nitin (@rOnInRaJ-dev), Adith Iyer (@Adeeth101), Julian Mo (@Yimche) and Sarthak Pathak (@SarthakPathak2004).

It adds scripts/GinanTauri/, a Tauri 2 desktop application (React/TypeScript UI, Rust backend) for configuring, running and plotting PEA on Windows, macOS and Linux. Based on v4.1.4.

No existing files are modified except README.md (new section). Existing workflows are unchanged.

Features

  • File processing: one or more RINEX files (including Hatanaka and gzip); configuration pre-filled from the header.
  • Products: provider/series/project selection from CDDIS; SP3, CLK, BIA, BRDC and static files downloaded automatically.
  • Signals: phase codes per constellation, ordered by priority and checked against the selected .BIA.
  • Real time: NTRIP, HTTP, serial and SBAS (SISNet) inputs, a decode-only stream test, live stream statistics and rotating recordings.
  • PEA binary: downloaded from GitHub releases on first run, with version selection or a custom build. Not bundled.
  • Plots: position (time series, scatter, errors, statistics, map), .TRACE residuals, satellite status and SBAS protection levels.
  • Configuration: all processing parameters editable, live YAML preview, import/export with credentials removed.
  • Credentials: stored only in netrc, never in settings, exports or logs.

Added files

Path Purpose
scripts/GinanTauri/ Application, tests and documentation
.github/workflows/frontend-tests.yml Tests on pull requests touching the app
.github/workflows/release.yml, tauri-build.yml Installer builds, published on a v* tag on main
scripts/serial/ Serial port set-up script for the LC29H(AA) (macOS/Linux)
justfile Run, build and release shortcuts

Running locally

cd scripts/GinanTauri
npm install
npm run tauri dev

Requires Node 20+, stable Rust and the Tauri system dependencies.

PressJump and others added 3 commits November 5, 2026 05:48
Add scripts/GinanTauri, a desktop front end for Ginan's Parameter Estimation
Algorithm built with Tauri 2: a React + TypeScript UI and a Rust backend that
does the file parsing, product downloads and process management. It runs PPP
on RINEX observation files or on live NTRIP and serial streams without
hand-editing YAML.

- Pre-fill the PEA configuration from a RINEX header (marker, receiver,
  antenna, a priori position, time window, constellations, observation codes),
  with multi-file RINEX input.
- Download the precise orbit, clock, bias and support products a run needs,
  and check the selected phase signals against the biases those products
  provide.
- Configure real-time inputs: NTRIP casters and mountpoints, SBAS, and USB
  serial receivers. scripts/serial/start_gnss_stream.sh prepares a serial
  port on macOS and Linux; the app does the same natively on Windows.
- Download and manage the pea binary from the GeoscienceAustralia/ginan
  releases, or use a local build.
- Run PEA, follow its progress and console output, and plot the position
  (.POS) and residual (.TRACE) files, the map and per-satellite status.
- Keep Earthdata and caster credentials in the user's netrc file, never in
  app settings or exported configs.

Also add:
- .github/workflows/frontend-tests.yml: typecheck, Vitest suite, frontend
  build, and cargo check/test on pull requests that touch the app.
- .github/workflows/release.yml and tauri-build.yml: build Windows, macOS
  and Linux installers and attach them to a GitHub release on a v* tag on
  main, or keep them as workflow artifacts on a manual run.
- justfile recipes to run, build and release the app.
- .github/workflows/build.yaml (Build and Package) now runs only when
  started by hand from the Actions page.
- A Ginan Desktop App section in README.md, and user and developer docs in
  scripts/GinanTauri/docs.

Built by the ANU TechLauncher 2026 Ginan team in collaboration with
Geoscience Australia.

Co-authored-by: Raj Nitin <44097892+rOnInRaJ-dev@users.noreply.github.com>
Co-authored-by: Adith Iyer <148426196+Adeeth101@users.noreply.github.com>
Co-authored-by: Julian Mo <94271827+Yimche@users.noreply.github.com>
Co-authored-by: Sarthak Pathak <126748182+SarthakPathak2004@users.noreply.github.com>
Keep .github/workflows/build.yaml identical to Ginan v4.1.4 so that it
runs on pushes and pull requests to main, develop and develop-weekly, as
it does upstream. The GinanTauri changes only add new workflows.
Contribution guidelines belong to the Ginan repository, so drop
scripts/GinanTauri/CONTRIBUTING.md and the links to it. Problem reports
now point to the Ginan issue tracker.

This branch has not been deployed

No deployments
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