Skip to content

First version of the desktop app and companion plugin - #1

Merged
RealAct merged 4 commits into
mainfrom
claude/initial-app
Oct 13, 2026
Merged

RealAct merged 4 commits into
mainfrom
claude/initial-app

Conversation

@RealAct

@RealAct RealAct commented Oct 13, 2026

Copy link
Copy Markdown
Owner

Requested by Eli · project thread

Before: the repository was empty.

After: a native desktop app for macOS, Windows and Linux. You add a WordPress site by approving the app on the site's own "Authorize Application" screen. You then see the posts, pages and custom post types your role allows, and edit them in the site's own block editor. Because it's the site's own editor, every block plugin, sidebar plugin and meta box works. The app's toolbar offers Publish or Submit for Review depending on your role. An optional companion plugin, Remote Editor Bridge, lets the editor open without a second sign-in.

How: Tauri 2 with a Rust core that handles all network traffic and keeps Application Passwords in the OS keychain. The React shell UI adapts its styling to each OS. The editor is an isolated child webview locked to the site's origin, and the only command it can call is one that reports editor state back to the app. CI runs lint, tests and WordPress coding standards checks. The release workflow builds signed .dmg, .deb/AppImage and .msi installers on GitHub's macOS, Ubuntu and Windows runners. Design and security notes are in docs/ARCHITECTURE.md and docs/SECURITY.md.

Tested on Linux with the installed .deb against a WordPress 6.5 site. Discovery, the real approval flow, contributor role gating, the sign-in handoff and site removal (which revokes the password) all worked. 27 Rust tests and 4 frontend tests pass, and the plugin passes phpcs with WordPress Coding Standards. Not yet verified: the macOS and Windows builds (this PR's CI covers compiling them) and the block editor canvas on a full WordPress install.

🤖 Generated with Claude Code

https://claude.ai/code/session_013wWY5SvB2w46Qw92qtHG5e


Generated by Claude Code

Tauri 2 app with a Rust core (REST client, Application Password sign-in,
OS keychain storage, isolated editor webview running the site's own block
editor), a platform-adaptive React shell, the Remote Editor Bridge plugin,
and CI/release workflows producing .dmg, .deb and .msi installers.

Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
Claude-Session: https://claude.ai/code/session_013wWY5SvB2w46Qw92qtHG5e
…or on Linux

Found by running the installed app against a real WordPress site:
- reopening sign-in failed because the closing window's label was still taken
- re-adding a site failed because WordPress rejects duplicate password names
- on Linux the editor webview was stacked under the shell instead of placed
  below the toolbar; the main window now hosts the shell and editor as
  sibling webviews and the editor uses a full-width focus layout everywhere

Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
Claude-Session: https://claude.ai/code/session_013wWY5SvB2w46Qw92qtHG5e
@RealAct RealAct self-assigned this Oct 13, 2026
PredefinedMenuItem is only used for the Quit item on Windows and Linux.

Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
Claude-Session: https://claude.ai/code/session_013wWY5SvB2w46Qw92qtHG5e
@RealAct
RealAct marked this pull request as ready for review October 13, 2026 04:28
@RealAct
RealAct merged commit 7aaf237 into main Oct 13, 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.

2 participants