feat: miller column browser, offline cache, search, breadcrumbs

- Dynamic miller column sizing with flexbox layout
- Root column (160px), middle slices (48px), active column (flex)
- Auto-scroll browser to rightmost column on navigation
- Offline indicator UI and IndexedDB cache integration
- /api/documents endpoint for client-side document caching
- Breadcrumb navigation in document content area
- FTS5 search with SQLite virtual table
- Client-side Mermaid and KaTeX rendering via CDN
- Deep sample content (advanced-topics/raft-deep-dive)
- Border removal (only search button keeps radius)
- Full viewport layout with proper borders between sidebar/content
This commit is contained in:
2026-04-30 11:55:03 -04:00
parent e45eeeb600
commit 780ff3a02c
40 changed files with 2986 additions and 190 deletions

View File

@@ -5,7 +5,7 @@ SERVER_DIR := apps/server
WEB_DIR := apps/web
SERVER_BIN := $(SERVER_DIR)/bin/md-hub-secure
.PHONY: web-install web-build server-run server-build server-test docker-build ci fmt
.PHONY: web-install web-build web-dev server-run server-build server-test docker-build ci fmt dev dev-web dev-server
web-install:
cd $(WEB_DIR) && $(NPM) install
@@ -13,6 +13,9 @@ web-install:
web-build:
cd $(WEB_DIR) && $(NPM) run build
web-dev:
cd $(WEB_DIR) && $(NPM) run dev
server-run:
cd $(SERVER_DIR) && CGO_ENABLED=1 $(GO) run ./cmd/md-hub-secure
@@ -23,6 +26,24 @@ server-build:
server-test:
cd $(SERVER_DIR) && CGO_ENABLED=1 $(GO) test ./...
dev-server:
cd $(SERVER_DIR) && MD_HUB_DEV_VITE_URL=http://localhost:5173 air
dev-web:
cd $(WEB_DIR) && $(NPM) run dev
dev:
@echo "Starting dev servers..."
@echo " - Go server (with air live reload) on http://localhost:8080"
@echo " - Vite dev server on http://localhost:5173"
@echo ""
@echo "Access the app at http://localhost:8080/app/"
@echo ""
@trap 'kill %1 %2 2>/dev/null || true' EXIT; \
make dev-server & \
make dev-web & \
wait
docker-build:
docker build -t md-hub-secure:dev .