The local-first focus workspace — now on Apple silicon and Intel.
v1.7.0 · First releaseNot sure which? Apple menu → About This Mac. "Apple M1/M2/M3/M4" means Apple silicon; "Intel" means the other one.
This build is not notarized by Apple, so Gatekeeper will refuse it on the first try — you will see "LockinRa can't be opened because Apple cannot check it for malicious software." That is expected, and it is about a certificate we do not have yet, not about the app.
To open it: drag LockinRa to Applications, then right-click the app → Open, and confirm once. macOS remembers the decision.
If macOS instead says the app is damaged, the download was quarantined. Clear it:
xattr -dr com.apple.quarantine /Applications/LockinRa.app
Notarization needs a paid Apple Developer ID. Until there is one, this is the honest trade: a working build with one extra click, rather than no Mac build at all.
Porting an Electron app to macOS is mostly free, which is exactly why bad Mac ports are common: the app runs, so it looks finished. The parts that are not free are the ones that touch the operating system directly — and each of these was a real defect, not a missing nicety.
.app is a folder, not an executable. Workspaces now hand it to LaunchServices, which is also what gives the app its Dock entry and its environment..zip that makes updates possible ships from v1.7.0 onward, so the next version is the first that can update itself.The build is ad-hoc signed and not notarized. Ad-hoc signing is what lets it run at all: macOS refuses to execute an unsigned arm64 binary outright, so without it an Apple silicon Mac would report the app as damaged rather than merely untrusted. Notarization is the separate step that would stop Gatekeeper asking, and it requires a paid Apple Developer ID.
The pipeline is already wired for a Developer ID identity and Apple's notary service, with the hardened runtime on. That last part is not a formality: the hardened runtime blocks the just-in-time compilation that both the browser engine and the on-device speech runtime depend on, so the app declares exactly the exceptions it needs — JIT, the microphone, and permission to ask Music and Spotify what is playing. Nothing broader.
When a certificate exists, the same build comes out signed and notarized and the extra click disappears. Nothing else about the app changes.
Windows has an installer, an .msi and a
Microsoft Store build.
Linux has an AppImage, a deb and an rpm on the Linux page.
Every file for every platform, with SHA-256 checksums, is on the downloads page.