# Support connection on your DApp

One of the main Saakuru App benefits is the ability to fully access Web3 World via an inbuilt browser. Within a few clicks, users can find and connect to a large number of decentralized applications. In this article, we will overview how any developer can very quickly open his web-based dApp to the Saakuru App user base.

### **Introduction to injected authorization:**

Saakuru App uses a custom Injected Web Provider script, which sets the \`window. ethereum\` object into the browser window (similar solutions are used by a few other most popular wallets like “MetaMask.” This object can be accessed globally from web applications and contains core required variables and functions for communication with Saakuru Wallet:

1. `window.ethereum.enable()` -> Promise, which emits a connect
2. `window.ethereum.isMetaOne` -> Boolean which indicates that the injected solution is Saakuru wallet.
3. `window.ethereum.chainId` -> string hex of current selected network
4. `window.ethereum.request` -> Promise for various Signing and Sending Requests (main supported methods “eth\_sign”, “eth\_signTypedData”, “personal\_sign”, “eth\_sendTransaction”, “eth\_requestAccounts”):&#x20;
5. `window.ethereum.sendAsync` -> Allows requests batching. It also allows injecting custom callback as the second parameter of the function.

`windows.ethereum`object is an extended class of EventEmitter, so internal events are also happening inside injected script logic. You can use the EventEmitter function addEventListener to listen to the internal event `connect` (Usually, this is automatically implemented inside the libraries most of the developers use, but in case you decide to build a custom solution, you can rely on this event to detect a successful connection)

For more secure verification, we recommend using the `eth_sign` request, which response you will be able to verify with the web3.js library and be sure that the wallet address is not faked.

### Libraries and UI elements.

For a beginner, we are recommending the `@web3-react` library produced by the amazing Uniswap team:&#x20;

<https://github.com/Uniswap/web3-react>

<https://www.npmjs.com/package/@web3-react/injected-connector>&#x20;

This library will contain all required integration points

We recommend you build a button ***\`Connect with Injected Wallet”*** which will be visible if `windows.ethereum` the object is defined. If you detect `window.ethereum.isMetaOne as True` you can apply a nice UI and label it ***“Connect with Saakuru App”***. <br>

Example:

<figure><img src="/files/0W8iv6ksErSFSM4icKdr" alt="" width="375"><figcaption></figcaption></figure>

<br>

In case `window.ethereum.isMetaOne` the variable is not defined, we recommend you add a link button with a dedicated partner download code (ask your direct contact from the AAG team) or a publicly used dynamic Link [`https://metaone.page.link/connect`](https://metaone.page.link/connect)<br>

Saakuru App icon for UI -> [HERE](https://vesting.saakuru.com/static/media/metaone-logo.c4c8812d01e200bacca4246060e159e1.svg)

### Summary

Our development team wishes you the best of luck working on your dApp project, and we will be more than thrilled to whitelist your application in <https://app.saakuru.com/dapp-store/discover> and expose it to thousands of Saakuru One community members! Please contact us via <partnership@saakuru.com> for the review

<br>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://source.saakuru.com/saakuru-source/saakuru-all-in-one-crypto-app/support-connection-on-your-dapp.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
