> For the complete documentation index, see [llms.txt](https://docs.justaname.id/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.justaname.id/react-sdk/overview.md).

# Overview

Use hooks directly in your React app for full control over the UI and user experience. Build custom flows for subname claiming, profile management, and ENS resolution, tailored exactly to your app.

**Quickstart:** A fast and easy setup guide to help you integrate the JustaName React SDK and start building custom ENS experiences in your application.

{% content-ref url="/pages/zwDdUaruqc2J4Fn09Ag9" %}
[Quickstart](/react-sdk/quickstart.md)
{% endcontent-ref %}

**Check Availability**: Verify if a subname is available before allowing users to claim it. Includes best practices for debouncing user input.

{% content-ref url="/pages/JoXWbBBZzfIgD9H5vQqM" %}
[Check Availability](/react-sdk/check-availability.md)
{% endcontent-ref %}

**Issue Subnames**: Claim and issue new subnames off-chain using the `useAddSubname` hook. Handles wallet signatures and API communication automatically.

{% content-ref url="/pages/rrglnOeKirqsClnnPYkn" %}
[Issue Subnames](/react-sdk/issue-subnames.md)
{% endcontent-ref %}

**Update Subnames**: Update ENS records including text records (avatar, bio, socials) and multi-chain addresses. Includes `toCoinType` usage for EVM chain address storage.

{% content-ref url="/pages/A95E8v9QYB2xtBEsitfV" %}
[Update Subnames](/react-sdk/update-subnames.md)
{% endcontent-ref %}

**Resolution:** Resolve any ENS name to retrieve all associated records—text records, coin addresses, and content hash—in a single call using `useRecords`.

{% content-ref url="/pages/rXkitTGd1pBshvfKsbYb" %}
[Resolution](/react-sdk/resolution.md)
{% endcontent-ref %}

***

**Reverse Resolution:** Look up the primary ENS name for any Ethereum address using `usePrimaryName`. Includes L2 primary name support with `toCoinType`.

{% content-ref url="/pages/PsSw9f8L7fYo1myTenwn" %}
[Reverse Resolution](/react-sdk/reverse-resolution.md)
{% endcontent-ref %}

**Get Subnames:** Fetch all subnames owned by the connected account or any arbitrary address using `useAccountSubnames` and `useAddressSubnames`.

{% content-ref url="/pages/sqoiF0Y8uNcc9UWnsgRT" %}
[Get All Subnames for an Owner](/react-sdk/get-all-subnames-for-an-owner.md)
{% endcontent-ref %}

***

#### Installation

{% tabs %}
{% tab title="npm" %}

```bash
npm install @justaname.id/react
```

{% endtab %}

{% tab title="yarn" %}

```bash
yarn add @justaname.id/react
```

{% endtab %}
{% endtabs %}
