Morphic
An AI-powered search engine with a generative UI
- AI-powered search with grounded, cited answers - Generative UI — answers render rich inline components (source-credited images, grids, headings) live from a streamed JSON spec, beyond plain markdown - Search modes: Quick and Adaptive - Model selector with dynamic provider detection (OpenAI, Anthropic, Google, Ollama, Vercel AI Gateway, OpenAI-compatible providers) - Multiple search providers (Tavily, SearXNG, Brave, Exa) - Chat history stored in PostgreSQL - Share search results with unique UR... The project is written primarily in TypeScript, distributed under the Apache License 2.0 license, first published in 2024. It has gained significant community traction with 8,913 stars and 2,344 forks on GitHub. Key topics include: generative-ai, generative-ui, nextjs, ollama, react.
Morphic
An AI-powered search engine with a generative UI.
<a href="https://vercel.com/oss"> <img alt="Vercel OSS Program" src="https://vercel.com/oss/program-badge.svg" /> </a> <br /> <br /><a href="https://trendshift.io/repositories/9207" target="_blank"><img src="https://trendshift.io/api/badge/repositories/9207" alt="miurla%2Fmorphic | Trendshift" style="width: 250px; height: 55px;" width="250" height="55"/></a>
<img src="./public/screenshot-2026-06-10.png" /> </div>Features
- AI-powered search with grounded, cited answers
- Generative UI — answers render rich inline components (source-credited images, grids, headings) live from a streamed JSON spec, beyond plain markdown
- Search modes: Quick and Adaptive
- Model selector with dynamic provider detection (OpenAI, Anthropic, Google, Ollama, Vercel AI Gateway, OpenAI-compatible providers)
- Multiple search providers (Tavily, SearXNG, Brave, Exa)
- Chat history stored in PostgreSQL
- Share search results with unique URLs
- File upload support
- User authentication with Supabase Auth
- Guest mode for anonymous usage
- Docker deployment ready
Installation
Docker (Recommended)
The quickest way to run Morphic locally:
bashdocker pull ghcr.io/miurla/morphic:latest
Then set up with Docker Compose:
- Clone the repository and configure environment:
bashgit clone https://github.com/miurla/morphic.git cd morphic cp .env.local.example .env.local
- Edit
.env.localand set at least one AI provider API key:
bashOPENAI_API_KEY=your_openai_key
See supported providers for other options (Anthropic, Google, Ollama, Vercel AI Gateway, OpenAI-compatible providers).
- Start all services:
bashdocker compose up -d
- Visit http://localhost:3000 and select your model from the model selector.
Docker Compose starts PostgreSQL, Redis, SearXNG, and Morphic automatically. No additional search API key is needed — SearXNG is included.
See the Docker Guide for more options including building from source and file upload configuration.
Local Development
- Clone and install:
bashgit clone https://github.com/miurla/morphic.git cd morphic bun install
- Configure environment:
bashcp .env.local.example .env.local
Edit .env.local and set your API keys:
bashOPENAI_API_KEY=your_openai_key TAVILY_API_KEY=your_tavily_key
To enable chat history, authentication, file upload, and other features, see CONFIGURATION.md.
- Start the dev server:
bashbun dev
Visit http://localhost:3000.
Deploy
Vercel
Contributing
We welcome contributions! Please see our Contributing Guide for details on how to get started, including local development setup.
License
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.
Contributors
Showing top 12 contributors by commit count.
