> For the complete documentation index, see [llms.txt](https://docs.appear.sh/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.appear.sh/installation/sdk-installations/redwood-js-and-vercel.md).

# Redwood JS & Vercel

The below instructions will guide you through setting up your RedwoodJS application and deploying it seamlessly on Vercel. Follow along to get your project up and running.

{% stepper %}
{% step %}

### Install using your favourite package manager

```bash
npm i @appear.sh/introspector // or
yarn add @appear.sh/introspector // or
pnpm add @appear.sh/introspector
```

{% endstep %}

{% step %}

### Create instantiation file for Appear

Create a file where you can instantiate Appear, for example: `api/src/withAppear.ts`

```typescript
/// withAppear.ts
import { createVercelMiddleware } from "@appear.sh/introspector/integrations/redwoodjs"

export const withAppear = createVercelMiddleware({
  // api key you can obtain at https://app.appear.sh/settings
  apiKey: "your-api-key",
  // any identifier of environment you prefer, we recommend separating production/staging/development. The more granular the better
  environment: process.env.NODE_ENV ?? "development",
  // other config as you desire
  // ...
})
```

{% endstep %}

{% step %}

### Wrap your Serverless Functions&#x20;

Wrap your Serverless Functions (API Endpoints) in `withAppear`

```typescript
// eg. api/src/functions/<function name>/<function name>.ts
import { withAppear } from "src/withAppear"

export const handler = withAppear(async (event, context) => {
  // your code
})
```

{% endstep %}

{% step %}

### Log into Appear to view entries

The introspector will begin reporting the structure of your API services when they're interacted with. Log into [Appear](broken://spaces/k1FE7BkpojojQWs9RfaQ/pages/fgXrRYhHPH6UqaisimYD) with your credentials to view the services that appear. You may need to refresh the page periodically.
{% endstep %}
{% endstepper %}

***

If you have any queries or require support with the above instructions, please [get in touch](/getting-started/get-in-touch.md) with us.
