makr.AI is a ChatGPT clone with enhanced features for makers & indie hackers built on top of using Next.js, TypeScript, Supabase, Jotai and Tailwind CSS.
Check this Youtube video to learn more.
I'll be building new features over time. If you have any suggestions, feel free to open a discussion or reach out to me on Twitter. I listed the features I'm working on next below.
What to expect:
- Long-term Memory for Conversations (Supabase's Vector Database) - 14.04.23
- Propmt Library
- Organising Conversations with Folders etc.
- Collections Library for saving responses
- Plugins ecosystem with GPT agents
Vercel
Host your own live version of makr.AI with Vercel.
1. Create a Supabase Project The application holds conversations in a Supabase database. You can create a free account here.
makr.AI needs a Supabase URL and Anon Key to connect to your database. You can find these in your Supabase project settings.
You must create 3 tables in your supabase project:
You can create all the tables you need with the sql function
that I cretead in the sql
folder of the repo. You can use the create-tables.sql
file in the sql
folder of the repo to create the tables. Remember that you must enable the pg_vector
extension before creating the tables.
After you create the embedding column, you should create an index
based on this column. You can use the create-index.sql
file in the sql
folder of the repo to create the index.
Finally, you must create a sql function called search-messages
in your Supabase project. You can use the search-messages.sql
file in the sql
folder of the repo to create the function.
Project Setup tutorial. Longterm Memory for ChatGPT tutorial.
2. Clone The Repo
git clone https://github.com/batuhanbilginn/makr-ai.git
3. Install Dependencies
yarn install
4. Create Your Enviroment Variables
Create your .env.local file in the root of the repo with your Supabase URL and Supabase Anon Key:
NEXT_PUBLIC_SUPABASE_URL=YOUR_URL
NEXT_PUBLIC_SUPABASE_ANON_KEY=YOUR_KEY
4. Run Development Server
yarn dev
When deploying the application, the following environment variables can be set:
Environment Variable | Default value | Description |
---|---|---|
NEXT_PUBLIC_SUPABASE_URL | - | The base url of your Supabase Project |
NEXT_PUBLIC_SUPABASE_ANON_KEY | - | The Anon Key for your Supabase Project |
If you don't have an OpenAI API key, you can get one here.
If you have any questions, feel free to reach out to me on Twitter.