Chat Js
Production-ready AI chat. Start here and make it your own. Formerly Sparka AI
Last verified:
What is Chat Js?
Chat Js is an open-source Nex : AI Knowledge Copilott.js AI chat app starter that provides a production-ready foundation for building AI chat applications. It includes authentication (GitHub, Google, anonymous), support for 120+ AI models from leading providers like OpenAI, Anthropic, Google, xAI, and Meta, streaming UI, tool calling, and Model Context Protocol (MCP) support. The tool eliminates the need to rebuild common AI chat infrastructure like auth, message persistence, streaming, file uploads, and model switching.
Key features include multi-gateway support via Vercel AI Gateway or OpenRouter, canvas for creating and editing rich documents with version history, parallel responses to compare multiple models side-by-side, deep research agent for synthesizing web reports, code execution in a secure sandbox for Python and JavaScript, web search with inline citations, image and video generation built-in, branching to fork conversations, resumable streams that continue generation after page refresh, syntax highlighting, sharing conversations via public links, projects for organizing chats into workspaces, and tRPC for end-to-end type-safe APIs.
Chat Js is aimed at developers and product teams building AI copilots, internal assistants, customer chat products, or multi-model playgrounds who need to ship quickly without starting from zero. It's particularly useful for teams wanting to prototype across multiple model providers, move from side project to production, or ship an AI chat MVP fast using a modern type-safe stack built on Nex : AI Knowledge Copilott.js, TypeScript, AI SDK, Better Auth, Drizzle ORM, PostgreSQL, Redis, and shadcn/ui.
Chat Js pricing
Pricing model: Freemium
ChatJS is completely free and open source under the Apache 2.0 license. There is no paid tier or subscription. The web demo is available at demo.chatjs.dev with no sign-up friction. Users must provide their own AI provider API keys (OpenAI, Anthropic, Google, etc.) and pay those providers directly for model usage. The tool itself has no cost - you only pay for the AI API calls you make through your chosen providers.
Chat Js pros
- Open source under Apache 2.0 license
- 120+ AI models from leading providers in one interface
- Production-ready authentication with OAuth (Google, GitHub, Vercel)
- Streaming UI with resumable streams after page refresh
- Multi-gateway support via Vercel AI Gateway or OpenRouter
- Canvas for rich document editing with version history and inline diffs
- Parallel responses to compare multiple models side-by-side
- Built-in code execution sandbox for Python and JavaScript
- Deep research agent that synthesizes web into comprehensive reports
- Web search with real-time results and inline citations
- Image and video generation built into conversations
- Model Context Protocol (MCP) support for extending capabilities
- Conversation branching to fork and explore alternatives
- Modern type-safe stack with Next.js, TypeScript, tRPC, and Zod
- Shadcn/UI components for beautiful and accessible UI
- Drag and drop attachments for images, PDFs, and docs
- Public link sharing for conversations
- Anonymous mode available alongside authenticated access
- Desktop builds available for macOS, Windows, and Linux
- Langfuse integration for LLM observability and analytics
Chat Js cons
- Desktop builds currently unsigned requiring OS warning bypass
- Requires self-hosting and managing your own infrastructure
- Users must bring their own AI provider API keys and pay for usage
- PostgreSQL and Redis required for full functionality
- Complex stack may overwhelm beginners unfamiliar with Next.js
- No managed hosted version - full responsibility on developer
- Rate limiting requires manual configuration
- Model configuration requires editing chat.config.ts file
- No built-in billing or payment processing for end users
- Documentation scattered across multiple pages
Frequently asked questions about Chat Js
What is ChatJS?
ChatJS is an open-source Next.js AI chat app starter that gives you a production-ready foundation with authentication, streaming UI, tool calling, and support for 120+ models. It stops you from rebuilding the same AI chat infrastructure by packaging auth, message persistence, streaming, file uploads, and model switching into a single well-architected codebase.
Who is ChatJS for?
It is aimed at developers and product teams building AI copilots, internal assistants, customer chat products, or multi-model playgrounds that need to ship quickly without starting from zero. It's perfect for teams wanting to prototype across multiple model providers or move from side project to production.
Can I use ChatJS with multiple AI providers?
Yes. The project is designed for multi-provider workflows, so you can evaluate and route across model vendors without rebuilding your frontend and app infrastructure. You get access to 120+ models from OpenAI, Anthropic, Google, xAI, Meta, Mistral, Alibaba, Amazon, Cohere, DeepSeek, Perplexity, and more through a unified interface.
Is ChatJS suitable for production use?
Yes. The starter includes the core building blocks teams usually need before launch, including auth, model integrations, streaming responses, and a modern type-safe stack. It includes production features like session management, rate limiting, PostgreSQL database, Redis caching, and observability via Langfuse.
How do I get started with ChatJS?
Scaffold a new project with a single command: npx @chat-js/cli@latest create my-app. You can also try the live web demo instantly at demo.chatjs.dev with no install or sign-up friction. From there, customize it, deploy it, and ship it.
What models are available in ChatJS?
ChatJS supports 120+ models including Claude (Anthropic), GPT (OpenAI), Gemini (Google), Grok (xAI), and Llama (Meta). The curated defaults include gpt-5-nano, gpt-5-mini, gemini-2.5-flash-lite, and claude-sonnet-4.5. You can configure which models are available and set task-specific defaults for chat, title generation, PDF analysis, image generation, and more.
Does ChatJS support anonymous users?
Yes. ChatJS includes anonymous mode alongside authenticated access. You can restrict which models are available to anonymous (non-authenticated) users through the anonymousModels configuration. By default, gemini-2.5-flash-lite, gpt-5-mini, gpt-5-nano, and claude-haiku-4.5 are available to anonymous users.
What is the tech stack behind ChatJS?
ChatJS is built on Next.js with App Router and React Server Components, TypeScript for full type safety, AI SDK, Better Auth for authentication, Drizzle ORM for type-safe database queries, PostgreSQL as the primary database, Redis for caching and resumable streams, Vercel Blob for blob storage, shadcn/ui for components, Tailwind CSS for styling, tRPC for end-to-end type-safe APIs, Zod for schema validation, Zustand for state management, and Langfuse for LLM observability.
Can I run code in ChatJS?
Yes. ChatJS includes code execution in a secure sandbox for both Python and JavaScript. Python comes with pandas, numpy, matplotlib, and more pre-installed. This allows you to run code snippets inline during conversations for data analysis, visualization, and computation.
How do I customize which models are available?
All model configuration lives in chat.config.ts under config.models. You can control provider order, disable specific models, set curated defaults for new users, restrict models for anonymous users, and configure task-specific defaults. The AI providers list includes OpenAI, Anthropic, xAI, Google, Meta, Mistral, Alibaba, Amazon, Cohere, DeepSeek, Perplexity, Vercel, Inception, Moonshot, Morph, and ZAI.