A personalized, LLM-powered knowledge base. Feed it raw notes and documents — it compiles a structured, interlinked wiki of markdown files you can browse and query.
Your messy thoughts in → structured, browsable, queryable knowledge base out.
Raw sources (markdown files, Obsidian vaults, etc.) go into raw/. An LLM pipeline reads them and compiles wiki pages into wiki/. You browse and query the result through a lightweight React UI.
The LLM does the grunt work: summarizing, cross-referencing, clustering ideas, keeping things consistent. You curate what goes in and explore what comes out.
| Mode | For | Description |
|---|---|---|
| Local | You + open-source users | Full wiki on your machine. Bring your own LLM provider and data. |
| Public | Portfolio / visitors | A deployed, rate-limited version of your wiki that others can browse and query. |
- Frontend: React 19 + Tailwind v4 (Vite)
- Backend: Python / FastAPI
- LLM: Gemini API to start; provider-agnostic via LiteLLM
- Data (local): Plain
.mdfiles + git — no database - Data (public): Supabase + S3 (free tier)
- Graph: D3.js force-directed knowledge graph
raw sources → data connectors → wiki compiler (LLM) → wiki/ (.md files)
↓
frontend reader | Q&A API | knowledge graph
- Viewer — static React app, reads compiled wiki files, no LLM calls
- Q&A layer — API endpoints that answer questions by reading relevant wiki pages
- Same query endpoint, two consumers (frontend chat panel + future MCP server)
| Stage | Goal |
|---|---|
| S0 | Skeleton: repo structure, schema conventions, empty interfaces |
| S1 | Mini MVP: markdown connector → LLM compiles wiki → browse in React |
| S2 | Full local: Q&A, knowledge graph, incremental updates, search |
| S3 | Public deploy: Vercel/Fly.io, Supabase backend, rate-limited Q&A |
| S4 | Open-source ready: Docker, INSTALL.md, docs, multi-provider support |
| S5 | Extensions: MCP server, Notion/Keep connectors, export formats |
pswiki/
├── raw/ # Your raw source documents (you own this)
├── wiki/ # LLM-compiled wiki pages (compiler owns this)
├── frontend/ # React viewer app
├── backend/ # FastAPI Q&A service
├── prompts/ # LLM prompt templates
├── schemas/ # Frontmatter JSON schema
├── config.example.yaml
└── docs/ # Plans and schema documentation
See docs/SCHEMA.md for wiki conventions and docs/plans/ for subproject plans.
Coming in S1. For now: copy
config.example.yaml→config.yamland add your API key.
Currently in S0 — skeleton and schema conventions. No compiler or frontend yet.