Run the docmgr Search Web UI (React SPA) against the local docmgr HTTP API.
docmgr includes a Search Web UI (React SPA) intended for local developer workflows.
It talks to the same HTTP API as other clients:
GET /api/v1/search/docs (cursor pagination)GET /api/v1/search/filesGET /api/v1/docs/get (doc viewer: frontmatter + markdown body)GET /api/v1/files/get (file viewer: text-only, safe roots)POST /api/v1/index/refreshGET /api/v1/workspace/statusUI routes:
/ search/doc?path=... document viewer (markdown rendering)/file?root=repo|docs&path=... file viewer (syntax highlighted)Search URL parameters (useful for sharing links):
sel=<docRelPath> selects a result (opens the desktop preview sidebar)preview=true opens the preview modal on mobileTwo-process loop:
http://localhost:3000http://127.0.0.1:3001The frontend proxies /api/* to the backend (no CORS setup needed).
make dev-backend
make ui-install
make dev-frontend
Open:
http://localhost:3000In embedded mode, docmgr api serve serves both:
/api/v1/* (JSON API)/ + /assets/* (SPA + assets, with SPA fallback routing)go generate ./internal/web
go build -tags "sqlite_fts5,embed" ./cmd/docmgr
./docmgr api serve --addr 127.0.0.1:8787 --root ttmp
Open:
http://127.0.0.1:8787// returns 404: run go generate ./internal/web (dev disk-serving) or build with -tags embed (embedded).fts_not_available: build/run with -tags sqlite_fts5./ focus search? open shortcuts modal↑/↓ select resultEnter open selected docAlt+1/2/3 switch Docs/Reverse/Files modeCtrl/Cmd+R refresh indexCtrl/Cmd+K copy selected doc path