Skip to content

Commit f52a31b

Browse files
committed
update docs
1 parent cc25cab commit f52a31b

6 files changed

Lines changed: 48 additions & 12 deletions

File tree

mimir-docs/app/(home)/page.mdx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -190,9 +190,9 @@ import { Separator } from "@/components/ui/separator";
190190
<Database className="size-5 text-primary" />
191191
</div>
192192
<div>
193-
<h3 className="mb-1 font-semibold leading-snug">Supabase Vector Store</h3>
193+
<h3 className="mb-1 font-semibold leading-snug">PostgreSQL Vector Store</h3>
194194
<div className="text-sm text-muted-foreground leading-relaxed">
195-
Built on Supabase for reliable, scalable vector storage. Fast semantic search with configurable similarity thresholds and match counts.
195+
Built on PostgreSQL with pgvector for reliable, scalable vector storage. Works with any Postgres provider (Supabase, Neon, self-hosted). Fast semantic search with configurable similarity thresholds and match counts.
196196
</div>
197197
</div>
198198
</div>
@@ -238,7 +238,7 @@ import { Separator } from "@/components/ui/separator";
238238
</div>
239239
<h3 className="mb-2 font-semibold text-lg leading-snug">Store</h3>
240240
<div className="text-sm text-muted-foreground leading-relaxed">
241-
Embeddings are stored in Supabase with source URLs, metadata, and full context. Everything is indexed and ready for semantic search.
241+
Embeddings are stored in PostgreSQL (pgvector) with source URLs, metadata, and full context. Everything is indexed and ready for semantic search.
242242
</div>
243243
</div>
244244

mimir-docs/app/layout.tsx

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ export const metadata: Metadata = {
1414
default: 'Mimir - Contextual RAG for Code & Documentation',
1515
template: '%s | Mimir',
1616
},
17-
description: 'Mimir is a comprehensive contextual RAG (Retrieval Augmented Generation) system with MCP integration. Ingest code and documentation from multiple GitHub repositories into Supabase vector store. Supports TypeScript, Python, and more. OpenAI-compatible API and MCP protocol for AI assistants.',
17+
description: 'Mimir is a comprehensive contextual RAG (Retrieval Augmented Generation) system with MCP integration. Ingest code and documentation from multiple GitHub repositories into PostgreSQL (pgvector). Supports TypeScript, Python, and more. OpenAI-compatible API and MCP protocol for AI assistants.',
1818
keywords: [
1919
'RAG',
2020
'Retrieval Augmented Generation',
@@ -24,7 +24,8 @@ export const metadata: Metadata = {
2424
'Documentation Search',
2525
'Codebase Search',
2626
'Vector Database',
27-
'Supabase',
27+
'PostgreSQL',
28+
'pgvector',
2829
'TypeScript',
2930
'Python',
3031
'AI Documentation',

mimir-docs/content/docs/configuration.mdx

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,10 @@ MIMIR_DATABASE_URL=postgresql://user:password@host:5432/database
6161

6262
Your PostgreSQL connection string. Mimir uses it to connect directly to your database and store/query vector embeddings.
6363

64+
<InfoCard>
65+
**Docker and managed Postgres (Supabase, Neon, etc.):** If the container cannot reach your database, run with **host network**: `docker run --rm --network host -v $(pwd)/.env:/app/.env:ro mimir-rag:local`. That uses the host's network and usually clears connection issues. Alternatively, for Supabase use the **Session Pooler** connection string (port 6543) from Dashboard → Settings → Database → Connection Pooling → Session mode.
66+
</InfoCard>
67+
6468
#### Embedding Dimension
6569

6670
The default schema uses `vector(3072)` for embeddings. If your embedding model uses a different dimension, update the database schema:

mimir-docs/content/docs/deployment.mdx

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,19 @@ docker run --rm \
3434
mimir-rag:latest
3535
```
3636

37+
### Database connection from Docker
38+
39+
If the container cannot reach your database (e.g. connection timeouts or "Not IPv4 compatible" with Supabase/Neon), run the image with **host network mode**. The app then uses the host’s network and can connect to the DB without changing your connection string:
40+
41+
```bash
42+
docker run --rm \
43+
--network host \
44+
--env-file .env \
45+
mimir-rag:latest
46+
```
47+
48+
With host network, the app listens on port 3000 on the host; omit `-p 3000:3000`. On Linux this usually resolves DB connection issues. On macOS/Windows, host network behaves differently—prefer the Session Pooler (port 6543) for Supabase or a connection string that works from inside the container.
49+
3750
<div className="my-6">
3851
<Separator />
3952
</div>
@@ -79,11 +92,12 @@ Hetzner is a popular choice for deploying Mimir due to its simplicity and cost-e
7992
```bash
8093
docker run -d \
8194
--name mimir-rag \
82-
-p 3000:3000 \
95+
--network host \
8396
--env-file .env \
8497
--restart unless-stopped \
8598
mimir-rag:latest
8699
```
100+
Using `--network host` avoids database connection issues with managed Postgres (Supabase, Neon, etc.). The server listens on port 3000 on the host; do not use `-p 3000:3000` when using host network.
87101

88102
That's it! Your Mimir instance is now running on Hetzner.
89103

mimir-docs/content/docs/getting-started.mdx

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,11 +14,15 @@ Before you begin, make sure you have:
1414
- **LLM Provider**: API key for OpenAI, Anthropic, Google, or Mistral
1515
- **GitHub** (optional): Repository with documentation (MDX) and/or code to ingest
1616

17-
## Step 1: Set up Supabase
17+
## Step 1: Set up PostgreSQL Database
1818

19-
1. Go to [supabase.com](https://supabase.com) and create a new project
20-
2. Note your project URL (e.g., `https://your-project.supabase.co`)
21-
3. Get your database password from Project Settings → Database
19+
You need a PostgreSQL database with the [pgvector](https://github.com/pgvector/pgvector) extension. You can use any provider:
20+
21+
- **[Supabase](https://supabase.com)** – Create a project, then use Settings → Database for your connection string. With Docker, use the **Session Pooler** (port 6543) if your database shows "Not IPv4 compatible".
22+
- **[Neon](https://neon.tech)** – Create a project and copy the connection string from the dashboard.
23+
- **Self-hosted** – Install PostgreSQL and the pgvector extension, then use a connection string like `postgresql://user:password@host:5432/database`.
24+
25+
Save your connection string; you'll add it as `MIMIR_DATABASE_URL` in the next step.
2226

2327
## Step 2: Configure mimir-rag
2428

@@ -48,7 +52,7 @@ make server
4852

4953
The server will:
5054
- Load your `.env` configuration
51-
- Automatically set up the database schema (if `DATABASE_URL` is configured)
55+
- Run Prisma migrations to set up the database schema (if `MIMIR_DATABASE_URL` is set)
5256
- Start the API on port 3000
5357

5458
## Step 5: Trigger ingestion

mimir-rag/README.md

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -120,6 +120,19 @@ docker run --rm \
120120
mimir-rag:local
121121
```
122122

123+
**Run with host network (fixes DB connection issues):**
124+
125+
If the container cannot reach your database (e.g. timeouts or "Not IPv4 compatible" with Supabase/Neon), use host network mode. The app then uses the host's network and can connect without changing your connection string:
126+
127+
```bash
128+
docker run --rm \
129+
--network host \
130+
-v $(pwd)/.env:/app/.env:ro \
131+
mimir-rag:local
132+
```
133+
134+
With `--network host`, the server listens on port 3000 on the host; omit `-p 3000:3000`. On Linux this usually clears database connection problems.
135+
123136
### How It Works
124137

125138
The Docker container:
@@ -154,7 +167,7 @@ Key configuration variables include:
154167
- **Multiple Repositories**: Use numbered variables for multiple repos:
155168
- `MIMIR_GITHUB_CODE_REPO_1_URL`, `MIMIR_GITHUB_CODE_REPO_1_DIRECTORY`, etc.
156169
- `MIMIR_GITHUB_DOCS_REPO_1_URL`, `MIMIR_GITHUB_DOCS_REPO_1_BASE_URL`, etc.
157-
- See [Configuration Documentation](../mimir-docs/app/configuration) for complete details
170+
- See [Configuration Documentation](../mimir-docs/content/docs/configuration.mdx) for complete details
158171
- **Parser**:
159172
- `MIMIR_EXTRACT_VARIABLES` - Extract top-level variables (default: false)
160173
- `MIMIR_EXTRACT_METHODS` - Extract class methods (default: true)

0 commit comments

Comments
 (0)