- Production
- Platform
Sparkboarding
Turn enterprise documents into searchable knowledge with citations and compliance
Multi-tenant knowledge platform that ingests enterprise documents (including scanned PDFs), lets teams chat with citations, generate compliance quizzes, and explore relationships in a knowledge graph. GPU microservices handle heavy OCR and conversion with fallback so the main API stays responsive.
- FastAPI
- React 18
- TypeScript
- PostgreSQL
- Redis Stack
- Neo4j
- Keycloak
- MinIO
- LiteLLM
From an enterprise document to a cited answer
The ingestion and retrieval paths preserve tenant scope while selecting OCR, vector, graph, or multi-agent processing based on the document and question.
A document enters a personal, team, or organization scope
The API validates the Keycloak tenant context, records catalog state, and stores the original file in MinIO before expensive processing begins.
A durable source document with an enforced retrieval scope.
Specialized services convert text, layout, and scans
Marker converts PDF or DOCX content into structured Markdown; GPU OCR handles image-heavy scans. Slow or unavailable processors can fall back without freezing the primary API.
Normalized text, layout, tables, and breadcrumb metadata.
Chunks become vector and graph knowledge
The platform enriches chunks, creates embeddings, writes coarse and fine HNSW indexes in Redis, and projects document relationships and semantic connections into Neo4j.
Tenant-scoped vector candidates and traversable relationships.
The selected agent retrieves, verifies, and cites
Quick, Balanced, Deep Research, or Graphy chooses the appropriate retrieval path. Results stream as phases, tokens, sources, and diagnostics; Graphy permits sanitized read-only Cypher only.
A cited answer, quiz, report, or graph view with source traceability.
Surfaces
- Documents
- Markdown/OCR ingestion, catalog telemetry, embedding controls, and chunk rewrite diagnostics.
- Chat
- Multi-agent sessions streamed over SSE with phases, sources, and router telemetry.
- Compliance
- Generate quizzes from selected docs, score attempts, and export org-wide results.
- Knowledge surfaces
- Neo4j visualization with semantic connection jobs, plus a canvas to link chats and docs.
- Governance
- Keycloak OIDC (PKCE), org/team scopes, admin tooling, and audit views.
- Reach
- Out-of-band chat + quizzes, plus notifications.
Assistant modes
Quick Responder
Fast answers with citations for day-to-day questions.
Balanced Researcher
More accurate answers when the question is ambiguous or needs verification.
Deep Research
End-to-end investigations that compare options and produce structured outputs.
Graphy
Relationship questions: what connects to what, and where a concept is referenced.
Greg
Long-term assistant: remembers decisions, tracks todos, and pushes reminders/notifications.
Document pipeline
- Upload (personal / team / org scope)
- Store raw + derived files (MinIO)
- Convert to Markdown (Marker) + OCR when needed
- Chunk + enrich metadata (breadcrumbs, section paths)
- Embeddings + dual-index (Redis HNSW)
- Graph projection + semantic connections (Neo4j)
- Chat/retrieval selects the best path per agent
Integrations
Identity & tenancy
- Keycloak OIDC (PKCE) with org-admin and superadmin surfaces.
- Tenant context is enforced server-side across documents, chat, and graph queries.
Document processors (microservices)
- Text-first conversion service (Marker) for PDF/DOCX to Markdown with layout + tables.
- Dedicated OCR service for image/scanned PDFs (GPU-enabled).
- Automatic fallback to local processing when a processor is slow/unavailable.
Retrieval + GraphRAG
- Redis Stack HNSW vector search with a dual-index strategy (coarse + fine) and semantic cache.
- Neo4j graph projection for chunk/document relationships and semantic connections.
- Graphy agent runs sanitized read-only Cypher (no writes, no multi-statement).
Channels
- Web app (React + TypeScript)
- Telegram bot (long-poller for chat/quizzes/notifications)
- Optional voice transcription integration
Production notes
- Streaming UX
- Chat streams phases, tokens, sources, and agent telemetry to the UI over SSE.
- Tenant isolation
- Graph queries and document retrieval enforce organization scope; no cross-tenant leakage.
- Graph query safety
- Graphy only allows read-only Cypher (no CREATE/MERGE/DELETE/SET, no multi-statement).
- Resilient ingestion
- Document processing is isolated into microservices; the API can fall back to local conversion.