> For the complete documentation index, see [llms.txt](https://asigna.gitbook.io/asigna/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://asigna.gitbook.io/asigna/developers/integrate-asigna-multisig-into-your-app/evm.md).

# EVM

### Integrate Your React Application with Asigna EVM

Asigna EVM is based on Safe Global's infrastructure, so integrating your React-based application follows a similar workflow to Safe. Below you'll find clear instructions for embedding your app into the Asigna interface seamlessly.

#### Step 1: Use Safe React Hooks

Utilize the Safe React hooks provided by Safe Global to easily manage multisig interactions within your React application:

* [Safe React Hooks Documentation](https://github.com/safe-global/safe-apps-sdk/tree/main/packages/safe-apps-react-sdk)

These hooks simplify common actions such as obtaining wallet info, interacting with contracts, and managing transactions.

#### Step 2: Choose Appropriate Libraries from Safe Developer Tools

Explore the Safe Apps Developer Tools monorepo to identify and include suitable libraries tailored to your application's specific use cases:

* [Safe Apps Developer Tools Monorepo](https://github.com/safe-global/safe-apps-sdk)

#### Step 3: Adjust HTTP Headers for Embedding

To embed your React app within the Asigna EVM interface (iframe), adjust your server's HTTP headers as follows:

* **Content-Security-Policy (CSP)**:

```
Content-Security-Policy: frame-ancestors 'self' https://evm.asigna.io;
```

* **X-Frame-Options**:

To ensure broader browser compatibility, it’s recommended to **remove** this header completely or configure it carefully as shown:

```
X-Frame-Options: ALLOW-FROM https://evm.asigna.io
```

(Note: The `ALLOW-FROM` directive may have limited support, thus removal is preferred.)

* **Access-Control-Allow-Origin**:

Allow Asigna to load your application smoothly by setting:

```
Access-Control-Allow-Origin: https://evm.asigna.io
```

For broader simplicity (less secure, suitable mostly for testing environments), you may use:

```
Access-Control-Allow-Origin: *
```

#### Step 4: Testing Your Integration

Test your integration by adding your application's URL as a custom app within the Asigna interface:

1. Navigate to Asigna EVM (<https://evm.asigna.io>).
2. Select the **Apps** tab.
3. Choose **Manage Apps** → **Add Custom App**.
4. Enter your app’s URL.

Ensure your app loads without CSP, framing, or cross-origin related errors in the browser console.

#### Summary

By following this integration guide, your React-based app will seamlessly embed into Asigna EVM, providing a smooth and secure user experience tailored specifically for multisig operations.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://asigna.gitbook.io/asigna/developers/integrate-asigna-multisig-into-your-app/evm.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
