Conversation
Add a build-desktop matrix job that builds the Geist frontend, then bundles the
pywebview launcher + FastAPI backend into a single binary per OS
(tju-expense-desktop-{linux,windows.exe,macos}) and attaches it to the release,
so students can download and double-click it like the CLI. The spec now takes
its output name from ASSET_NAME, mirroring the CLI build.
Note: the Linux job installs GTK/WebKit for pywebview and is the step most
likely to need adjustment on a first real release run.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Introduce the graphical desktop app in the top-level README (screenshot, username/password login, CSV export, Geist UI) with per-OS download links to the release assets and a campus-network note. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Follow-up to #13, so the desktop app is actually usable by others: a release now builds and ships a downloadable binary, and the README points to it.
CI
build-desktopmatrix job inrelease.yml: builds the Geist frontend (npm run build), then bundles the pywebview launcher + FastAPI backend into a single per-OS binary and attaches it to the release astju-expense-desktop-{linux,windows.exe,macos}.ASSET_NAME, mirroring the CLI build.Docs
Note
Download links go live once a release is cut with this workflow in place (same pattern as the existing CLI badges).
🤖 Generated with Claude Code