diff --git a/src/lib/components/AddRepositoryModal.svelte b/src/lib/components/AddRepositoryModal.svelte
new file mode 100644
index 0000000..51a18ac
--- /dev/null
+++ b/src/lib/components/AddRepositoryModal.svelte
@@ -0,0 +1,162 @@
+
+
+
{error}
+{message}
+ +Indexing complete.
+ {:else if job.status === 'failed'} +{job.error ?? 'Indexing failed.'}
+ {/if} +{repo.id}
+{repo.description}
+ {/if} + +Indexing failed. Check jobs for details.
+ {/if} + +Visit svelte.dev/docs/kit to read the documentation
+ + ++ {repositories.length} + {repositories.length === 1 ? 'repository' : 'repositories'} indexed +
+{errorMessage}
++ Add your first GitHub or local repository to start indexing documentation for AI-powered + retrieval. +
+ +{repo.id}
+ {#if repo.description} +{repo.description}
+ {/if} + {#if repo.sourceUrl} + {#if repo.source === 'github'} + + {repo.sourceUrl} + + {:else} +{repo.sourceUrl}
+ {/if} + {/if} +{errorMessage}
+{successMessage}
+Indexing in progress
+Last indexing run failed. Trigger re-index to retry.
+{job.error}
+ {/if} +Configure TrueRef embedding and indexing options
++ Embeddings enable semantic search. Without them, only keyword search (FTS5) is used. +
+ + {#if loading} +Loading current configuration…
+ {:else} + +Local ONNX model via @xenova/transformers
+Model: Xenova/all-MiniLM-L6-v2 · 384 dimensions
+ {#if localAvailable === null} +Checking availability…
+ {:else if localAvailable} +@xenova/transformers is installed and ready.
+ {:else} +
+ @xenova/transformers is not installed. Run
+ npm install @xenova/transformers
+ to enable local embeddings.
+
+ Self-hosted documentation intelligence platform — a full-stack clone of context7. +
+