Skip to content

Commit

Permalink
Update docs about desktop-browser integration
Browse files Browse the repository at this point in the history
  • Loading branch information
dani-garcia committed Nov 1, 2024
1 parent 3463505 commit 1e046c3
Showing 1 changed file with 25 additions and 28 deletions.
53 changes: 25 additions & 28 deletions docs/getting-started/clients/browser/biometric.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -37,14 +37,18 @@ reference paths as described [here](./index.md).

:::

Native messaging works by having the browser start a lightweight proxy baked into our desktop
application.
Native messaging works by having the browser start a lightweight proxy (`desktop_proxy`) included
with our desktop application.

Out of the box, the desktop application can only communicate with the production browser extension.
When you enable browser integration in the desktop application, the application generates manifests
which contain the production IDs of the browser extensions. To enable communication between the
desktop application and development versions of browser extensions, we need to add your browser
extension development ID to this manifest instead.
which contain the production IDs of the browser extensions.

To enable communication between the desktop application and development versions of browser
extensions, the manifests should also contain your browser extension development ID. When running
the desktop application in developer mode it will try to do this automatically for you. If this
process doesn't work, we need to manually add your browser extension development ID to the manifests
instead.

### Build and Run the Browser Extension

Expand All @@ -57,10 +61,24 @@ extension development ID to this manifest instead.
- For other browsers, use `npm run build:watch` and then load the locally built extension using the
method described [here](./index.md#testing-and-debugging).

### Build and Run the Desktop App

Follow the [Desktop](../desktop/index.mdx) setup document.

Make sure to turn on `Enable browser integration` in the Desktop app's Preferences menu.

If everything has gone correctly, you should be able to go in the Browser Extension, access the
Settings menu, and enable the `Unlock with biometrics` option.

- The Browser will ask you to allow the action, but then lock the Extension. When you unlock the
vault and enable Biometric unlock again, you'll be asked to confirm this choice in the Desktop app
and also use the native biometric unlock feature.

### Add the Extension ID for Native Messaging

Once you have the Extension running, confirm that the Extension ID has been added to the
`NativeMessagingHost` JSON file for your chosen browsers.
If after setting up the Desktop application and the Browser extension you find that
`Unlock with biometrics` in browser is still not detecting the Desktop app, you might need to
manually add your Extension ID to the manifest file of your browser.

- Find the Extension ID at `chrome://extensions` or `about:debugging`.

Expand All @@ -84,24 +102,3 @@ Once you have the Extension running, confirm that the Extension ID has been adde
</CodeBlock>
</TabItem>
</Tabs>

### Build and Run the Desktop App

Follow the [Desktop](../desktop/index.mdx) setup document.

:::caution

On macOS you will either need to build a [Mac App Store Development Build](../desktop/mac/index.md),
or turn off gatekeeper.

:::

I've got the projects running, now what?

- In the Desktop app's Preferences menu, turn on `Enable browser integration`.
- In the Browser Extension, access the Settings menu, and enable the `Unlock with biometrics`
option.

- The Browser will ask you to allow the action, but then lock the Extension. When you unlock the
vault and enable Biometric unlock again, you'll be asked to confirm this choice in the Desktop
app and also use the native biometric unlock feature.

0 comments on commit 1e046c3

Please sign in to comment.