> ## Documentation Index
> Fetch the complete documentation index at: https://www.dynamic.xyz/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Sign in with Farcaster

## Introduction

This tutorial will guide you through the process of enabling read-only access to Farcaster using the Dynamic SDK (if you need write access, see [this guide](/recipes/integrations/farcaster/farcaster-write-access)).

If you enable only social signup, and only Farcaster as a provider, the user will see the QR code immediately. If there are other providers enabled/other login methods, Farcaster will appear as a button, which will then open the QR code. Both UIs are shown below:

<Tabs>
  <Tab title="Farcaster only UI">
    <Frame>
      <img src="https://mintcdn.com/dynamic-docs-testing/L6Baf9nHRMN5_MjI/images/widget/widget-farcaster-qr-code.png?fit=max&auto=format&n=L6Baf9nHRMN5_MjI&q=85&s=9dc83eeb56f9086881b2f9bf80a32276" width="954" height="1374" data-path="images/widget/widget-farcaster-qr-code.png" />
    </Frame>
  </Tab>

  <Tab title="Farcaster as a button">
    <Frame>
      <img src="https://mintcdn.com/dynamic-docs-testing/L6Baf9nHRMN5_MjI/images/widget/widget-farcaster-as-button.png?fit=max&auto=format&n=L6Baf9nHRMN5_MjI&q=85&s=49d6fe8b5d547caf88dec46f17f5da89" width="942" height="742" data-path="images/widget/widget-farcaster-as-button.png" />
    </Frame>
  </Tab>
</Tabs>

## Video walkthrough

<Frame>
  <iframe src="https://www.loom.com/embed/5df7051ff32e494b9b555cb566545b84?sid=8cc2f6ac-0e40-4cf5-8657-24d3d1a95907" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen width="100%" height="640" />
</Frame>

## Step By Step Walkthrough

### Enable Farcaster Signup

Visit [Log in & User Profile page in the dashboard](https://app.dynamic.xyz/dashboard/log-in-user-profile) and under "Social", enable Farcaster.

### Configure your Dynamic app

You don't need to do anything extra in your Dynamic app to enable Farcaster sign-in. The Dynamic SDK will automatically handle the sign-in process for you.

The easiest way of seeing the UI is to use the DynamicWidget UI component:

```tsx theme={"system"}
import { DynamicContextProvider, DynamicWidget } from "@dynamic-labs/sdk-react-core";

export default function App() {
  return (
    <DynamicContextProvider
        settings={{
          environmentId: "YOUR_ENV"
        }}
    >
      <DynamicWidget />
    </DynamicContextProvider>
  );
}
```

You're done! Your users can now sign in with Farcaster.

## Further resources

* [Enable write access to Farcaster](/recipes/integrations/farcaster/farcaster-write-access)
* [Create embedded wallet from Farcaster Frame](/recipes/integrations/farcaster/embedded-wallet-frame)
