> For the complete documentation index, see [llms.txt](https://docs.nad.domains/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.nad.domains/developers/integrating-into-your-dapps/using-nns-sdks.md).

# Using NNS SDKs

{% hint style="info" %}
For Monad mainnet, please use SDKs with version 2.0.0+
{% endhint %}

We provide SDKs for interacting with Nad Name Service with many different option: using `Wagmi`, `Etherjs` and `Viem`

### [@nadnameservice/nns-wagmi-hooks](https://www.npmjs.com/package/@nadnameservice/nns-wagmi-hooks)

### [@nadnameservice/nns-viem-sdk](https://www.npmjs.com/package/@nadnameservice/nns-viem-sdk)

### [@nadnameservice/nns-ethers-sdk](https://www.npmjs.com/package/@nadnameservice/nns-ethers-sdk)

\
For detail on how to integrating these SDK into your projects, please check the above links.

## Pros & Cons

### ✅ Pro

* **Simplified Integration**: high-level APIs abstract away name normalization, hashing, and contract calls.
* **Supports popular frameworks**: integrates seamlessly with Wagmi, Ethers.js, Viem.
* **Faster development**: less boilerplate, more focus on business logic.
* **Type Safety**: Likely includes TypeScript definitions

### ⚠️ Cons

* **Dependency overhead**: adds libraries and bundles.
* **Black‑box abstraction**: less control over low‑level contract data/query parameters.
* **Customization limitations**: SDK may lack edge-case support or new contract methods until updated.
