No description
Find a file
2025-09-21 13:40:29 +01:00
.github/workflows fix: lint workflow (#1167) 2025-09-08 21:02:06 +01:00
.vscode Revert "Upgrade linter and formatter to Ultracite" (#1226) 2025-09-21 12:03:29 +01:00
app Revert "fix(auth): show gateway dialog for all authentication errors" (#1230) 2025-09-21 13:11:54 +01:00
artifacts Revert "Upgrade linter and formatter to Ultracite" (#1226) 2025-09-21 12:03:29 +01:00
components Revert "fix credit card gateway error" (#1232) 2025-09-21 13:40:29 +01:00
hooks Revert "Upgrade linter and formatter to Ultracite" (#1226) 2025-09-21 12:03:29 +01:00
lib Revert "Upgrade linter and formatter to Ultracite" (#1226) 2025-09-21 12:03:29 +01:00
public/images feat: reference geist from google fonts (#876) 2025-03-18 13:57:06 -07:00
tests Revert "Upgrade linter and formatter to Ultracite" (#1226) 2025-09-21 12:03:29 +01:00
.env.example integrate ai gateway and improve ui components (#1145) 2025-09-01 11:07:07 +01:00
.gitignore feat (vscode): add suggested vscode extension and settings configs 2025-03-17 16:51:19 -07:00
biome.jsonc Revert "Upgrade linter and formatter to Ultracite" (#1226) 2025-09-21 12:03:29 +01:00
components.json Upgrade to Tailwind CSS v4 (#1173) 2025-09-09 20:44:07 +01:00
drizzle.config.ts Revert "Upgrade linter and formatter to Ultracite" (#1226) 2025-09-21 12:03:29 +01:00
instrumentation.ts Revert "Upgrade linter and formatter to Ultracite" (#1226) 2025-09-21 12:03:29 +01:00
LICENSE Clean up deps 2024-08-24 23:23:37 -05:00
middleware.ts Revert "Upgrade linter and formatter to Ultracite" (#1226) 2025-09-21 12:03:29 +01:00
next-env.d.ts chore: bump versions (#845) 2025-03-04 18:00:14 -08:00
next.config.ts Revert "Upgrade linter and formatter to Ultracite" (#1226) 2025-09-21 12:03:29 +01:00
package.json Revert "Upgrade linter and formatter to Ultracite" (#1226) 2025-09-21 12:03:29 +01:00
playwright.config.ts Revert "Upgrade linter and formatter to Ultracite" (#1226) 2025-09-21 12:03:29 +01:00
pnpm-lock.yaml Revert "Upgrade linter and formatter to Ultracite" (#1226) 2025-09-21 12:03:29 +01:00
postcss.config.mjs Revert "Upgrade linter and formatter to Ultracite" (#1226) 2025-09-21 12:03:29 +01:00
README.md [docs] Update deploy URLs to point to /templates/next.js/nextjs-ai-chatbot (#1194) 2025-09-13 16:03:31 -04:00
tsconfig.json Revert "Upgrade linter and formatter to Ultracite" (#1226) 2025-09-21 12:03:29 +01:00
vercel-template.json Add vercel-template.json (#1193) 2025-09-13 14:26:49 -04:00

Next.js 14 and App Router-ready AI chatbot.

Chat SDK

Chat SDK is a free, open-source template built with Next.js and the AI SDK that helps you quickly build powerful chatbot applications.

Read Docs · Features · Model Providers · Deploy Your Own · Running locally


Features

  • Next.js App Router
    • Advanced routing for seamless navigation and performance
    • React Server Components (RSCs) and Server Actions for server-side rendering and increased performance
  • AI SDK
    • Unified API for generating text, structured objects, and tool calls with LLMs
    • Hooks for building dynamic chat and generative user interfaces
    • Supports xAI (default), OpenAI, Fireworks, and other model providers
  • shadcn/ui
  • Data Persistence
  • Auth.js
    • Simple and secure authentication

Model Providers

This template uses the Vercel AI Gateway to access multiple AI models through a unified interface. The default configuration includes xAI models (grok-2-vision-1212, grok-3-mini) routed through the gateway.

AI Gateway Authentication

For Vercel deployments: Authentication is handled automatically via OIDC tokens.

For non-Vercel deployments: You need to provide an AI Gateway API key by setting the AI_GATEWAY_API_KEY environment variable in your .env.local file.

With the AI SDK, you can also switch to direct LLM providers like OpenAI, Anthropic, Cohere, and many more with just a few lines of code.

Deploy Your Own

You can deploy your own version of the Next.js AI Chatbot to Vercel with one click:

Deploy with Vercel

Running locally

You will need to use the environment variables defined in .env.example to run Next.js AI Chatbot. It's recommended you use Vercel Environment Variables for this, but a .env file is all that is necessary.

Note: You should not commit your .env file or it will expose secrets that will allow others to control access to your various AI and authentication provider accounts.

  1. Install Vercel CLI: npm i -g vercel
  2. Link local instance with Vercel and GitHub accounts (creates .vercel directory): vercel link
  3. Download your environment variables: vercel env pull
pnpm install
pnpm dev

Your app template should now be running on localhost:3000.