Deep Links in Joplin Mobile Web PWA (IOS)

Hi Joplin folks,

I use mobile Web app version on IOS (PWA) for its flexibility, especially with plugins on iOS - it lets install non-recommended plugins compared to native app. I’ve been experimenting with deep linking (like Universal Web Links or similar functionality) and wondered if anyone has cracked this for the PWA. Specifically:

Has anyone managed to get deep links (e.g., from a plugin or custom setup) to open directly in the PWA instead of the native app?

Have you tweaked any backend settings, plugins, or found a clever workaround to make this happen?

Any success with redirecting links or setting up the PWA to handle custom URL schemes?

I’d love to hear about your experiences, solutions, or even ideas to explore. Thanks for any insights you can share!

Below is TLDR on what I'm thinking to do about this in case anyone will be interested. Would love to hear your thoughts on this.

Enable Universal Web Link Support in Joplin PWA

Goal: Deep-link Universal Web Links into the Joplin PWA instead of the native app.

End result:

  • user clicks Universal Web Link prev. generated by Copy Universal Web Link plugin;
  • plugin's backend (ianylink) opens up and before redirect to native app it records target note details;
  • IOS notices regular deep link to native Joplin app, opens PWA instead;
  • Copy Universal Web Link plugin starts up on PWA load;
  • plugin queries ianylink for recorded note details;
  • plugin finds note in Joplin and opens it.

Approach: Enhance the ianylink backend ("redirector") used by Copy Universal Web Link Joplin Plugin to cache UWL parameters (note ID + heading hash) in an array with a 60 s TTL and expose them via GET /pending. On PWA startup, the plugin fetches all entries, iterates until it finds a locally present note, and jumps to its heading.

iOS : Create a “Joplin” shortcut for the PWA URL and automate it to run whenever the native Joplin app is opened.

In case someone is interested I can share more detailed design.

1 Like