2.6 KiB
Setup guide
Prerequisites
Steps
- Clone the repo
- Run
bun installin the root directory - Create a
.dev.varsfile inapps/webwith the following content:
GOOGLE_CLIENT_ID="-" // required, visit https://developers.google.com/identity/protocols/oauth2
GOOGLE_CLIENT_SECRET="-" // required
NEXTAUTH_SECRET='nextauthsecret'
DATABASE_URL='database.sqlite'
NEXTAUTH_URL='http://localhost:3000'
BACKEND_SECURITY_KEY='veryrandomsecuritykey'
BACKEND_BASE_URL="where your backend is hosted"
- Setup the database:
First, edit the wrangler.toml file in apps/web to point the d1 database to your account.
You can create a d1 database by running this command
bunx wrangler d1 create <YOUR_DATABASE_NAME>
And then replace database_name and database_id with the values
Note
please don't change the binding value even if wrangler cli suggests you to do so.
[[d1_databases]]
binding = "DATABASE"
database_name = "YOUR_DATABASE_NAME"
database_id = "YOUR_DB_ID"
Simply run this command in apps/web
bunx wrangler d1 migrations apply <YOUR_DATABASE_NAME>
If it runs, you can set up the cloud database as well by removing the --local flag,
if you just want to contribute to frontend then just run bun run dev in the root of the project and done! (you won't be able to try ai stuff), otherwise continue...
- You need to host your own worker for the
apps/cf-ai-backendmodule.
To do this, first edit the .dev.vars file in apps/cf-ai-backend with the following content:
SECURITY_KEY="veryrandomsecuritykey"
// Why? to generate embeddings with 4000+ tokens
OPENAI_API_KEY="sk-"
- Run this command to initialise vector database
Note: You need to use the workers paid plan to use vectorize for now.
wrangler vectorize create --dimensions=1536 supermem-vector-1 --metric=cosine
-
Change the
wrangler.tomlfile inapps/cf-ai-backendto point to your KV namespace -
Run
bun devin the root directory and Voila! You have your own supermemory instance running!
Note: You need to replace the url
https://cf-ai-backend.dhr.wtfeverywhere with your own url for the cf-ai-backend module.
Deploying
To deploy the web app, run bun deploy in the apps/web directory.
To deploy the cf-ai-backend module, run wrangler publish in the apps/cf-ai-backend directory.
To get the extension running, you need to build it first. Run bun build in the apps/extension directory and then load the extension in chrome.