An AI-powered search engine with a generative UI.
[!NOTE] Please note that there are differences between this repository and the official website morphic.sh. The official website is a fork of this repository with additional features such as authentication, which are necessary for providing the service online. The core source code of Morphic resides in this repository, and it's designed to be easily built and deployed.
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
cd morphic
bun install
Follow the guide below to set up Upstash Redis. Create a database and obtain UPSTASH_REDIS_REST_URL
and UPSTASH_REDIS_REST_TOKEN
. Refer to the Upstash guide for instructions on how to proceed.
cp .env.local.example .env.local
Your .env.local file should look like this:
# OpenAI API key retrieved here: https://platform.openai.com/api-keys
OPENAI_API_KEY=
# Tavily API Key retrieved here: https://app.tavily.com/home
TAVILY_API_KEY=
# Upstash Redis URL and Token retrieved here: https://console.upstash.com/redis
UPSTASH_REDIS_REST_URL=
UPSTASH_REDIS_REST_TOKEN=
Note: This project focuses on Generative UI and requires complex output from LLMs. Currently, it's assumed that the official OpenAI models will be used. Although it's possible to set up other models, if you use an OpenAI-compatible model, but we don't guarantee that it'll work.
bun dev
You can now visit http://localhost:3000.
Host your own live version of Morphic with Vercel or Cloudflare Pages.
Morphic
repo and Next.js
preset.OPENAI_API_KEY
and TAVILY_API_KEY
env vars.Settings
-> Functions
-> Compatibility flags
, add nodejs_compat
to preview and production.The build error needs to be fixed: issue
If you want to use Morphic as a search engine in your browser, follow these steps:
https://morphic.sh/search?q=%s
This will allow you to use Morphic as your default search engine in the browser.