Files
radicle-desktop/README.md
T
Rūdolfs Ošiņš 840f1b0c08 Only let an AppImage claim the rad: scheme
A dev build or an AppImage registered itself whenever it wasn't already
the handler, replacing the installed app as the target of rad: links.
Now installers own the scheme, and an AppImage only claims it when no
other handler is set. Dev builds never register; the README explains
how to test links in them instead.
2026-10-08 10:35:46 +02:00

2.5 KiB

Radicle Desktop

This desktop application lets you interact with Radicle, a peer-to-peer code collaboration and publishing stack.

Installation

See radicle.dev/desktop#install.

From source

Prerequisites:

On Windows, NPM's script shell must be set to a POSIX compatible shell such as Git Bash:

npm config set script-shell "C:\\Program Files\\git\\bin\\bash.exe"

Run the following commands to build the desktop app locally:

git clone https://seed.radicle.dev/z4D5UCArafTzTQpDZNQRuqswh3ury.git radicle-desktop
cd radicle-desktop
npm install
npm run tauri build

Then run one of the builds that the script outputs at the end.

Development

To start the app in development mode with hot reload:

npm run dev

To log how long every backend command takes, for performance work, set VITE_LOG_INVOKE_TIMINGS=true. Each call then prints [invoke] <command> <ms>ms to the browser console (visible at debug level):

VITE_LOG_INVOKE_TIMINGS=true npm run dev

A dev build uses its own identifier, so it runs next to an installed release, and it never registers itself as the handler for rad: links. On Linux and Windows, open a link in it by starting the dev binary a second time with the link as its argument, while npm run dev is running:

target/dev-without-assertions/radicle-desktop rad:z4D5UCArafTzTQpDZNQRuqswh3ury

On macOS links only reach app bundles. Quit the installed app, then build and open a debug bundle:

npm run tauri build -- --debug --bundles app

Releasing

Releases are driven by an interactive, phased script. Start one with:

scripts/release --phase prep --version X.Y.Z

Each phase does its mechanical work, then prints the manual tasks for its gate and the exact flag to resume with. List the phases and see the configuration with scripts/release --list and scripts/release --help.

Getting in touch

To get in touch with the maintainers, sign up to our official chat on Zulip.

License

The UI is distributed under the terms of GPLv3. See LICENSE for details.