
Morphic
An AI-powered search engine with a generative UI.
ποΈ Overview
- π Features
- π§± Stack
- π Quickstart
- π Deploy
- π₯ Contributing
- π License
π Explore AI-generated documentation on DeepWiki
π Features
Core Features
- AI-powered search with GenerativeUI
- Natural language question understanding
- Multiple search providers support (Tavily, Brave, SearXNG, Exa)
- Search modes: Quick, Planning, and Adaptive
- Model type selection: Speed vs Quality
- Inspector panel for tool execution and AI processing details
Authentication
- User authentication powered by Supabase Auth
Guest Mode
- Allow users to try the app without creating an account
- No chat history stored for guests (ephemeral sessions)
- Optional daily rate limit per IP address
- Enable with
ENABLE_GUEST_CHAT=true
Chat & History
- Chat history automatically stored in PostgreSQL database
- Share search results with unique URLs
- Message feedback system
- File upload support
AI Providers
- OpenAI (Default)
- Anthropic Claude
- Google Gemini
- Vercel AI Gateway
- Ollama
Models are configured in config/models/*.json with profile-based settings. When using non-OpenAI providers, update the model configuration files with compatible model IDs. See Configuration Guide for details.
Search Capabilities
- URL-specific search
- Content extraction with Tavily or Jina
- Citation tracking and display
- Self-hosted search with SearXNG support
Additional Features
- Docker deployment ready
- Browser search engine integration
- LLM observability with Langfuse (optional)
- Todo tracking for complex tasks
π§± Stack
Core Framework
- Next.js - React framework with App Router
- TypeScript - Type-safe development
- Vercel AI SDK - TypeScript toolkit for building AI-powered applications
Authentication & Authorization
- Supabase - User authentication and backend services
AI & Search
- OpenAI - Default AI provider (Optional: Google AI, Anthropic)
- Tavily AI - AI-optimized search with context
- Brave Search - Traditional web search results
- Tavily alternatives:
- SearXNG - Self-hosted search
- Exa - Meaning-based search powered by embeddings
- Firecrawl - Web, news, and image search with crawling, scraping, LLM-ready extraction, and open source.
Data Storage
- PostgreSQL - Primary database (supports Neon, Supabase, or standard PostgreSQL)
- Drizzle ORM - Type-safe database ORM
- Cloudflare R2 - File storage (optional)
UI & Styling
- Tailwind CSS - Utility-first CSS framework
- shadcn/ui - Re-usable components
- Radix UI - Unstyled, accessible components
- Lucide Icons - Beautiful & consistent icons
π Quickstart
1. Fork and Clone repo
Fork the repo to your Github account, then run the following command to clone the repo:
git clone git@github.com:[YOUR_GITHUB_ACCOUNT]/morphic.git
2. Install dependencies
cd morphicbun install
3. Configure environment variables
cp .env.local.example .env.local
Fill in the required environment variables in .env.local:
OPENAI_API_KEY=your_openai_keyTAVILY_API_KEY=your_tavily_key
4. Run app locally
bun dev
Visit http://localhost:3000 in your browser.
Note: By default, Morphic runs without a database or authentication. To enable chat history, authentication, and other features, see CONFIGURATION.md. For Docker setup, see the Docker Guide.
π Deploy
Host your own live version of Morphic with Vercel or Docker.
Vercel
Note: For Vercel deployments, set ENABLE_AUTH=true and configure Supabase authentication to secure your deployment.
Docker
See the Docker Guide for prebuilt images, Docker Compose setup, and deployment instructions.
π₯ Contributing
We welcome contributions to Morphic! Whether it's bug reports, feature requests, or pull requests, all contributions are appreciated.
Please see our Contributing Guide for details on:
- How to submit issues
- How to submit pull requests
- Commit message conventions
- Development setup
π License
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.
Related Templates
Upstash Vector + Vercel AI SDK Starter

Next.js AI Chatbot

Pinecone - Vercel AI SDK Starter
