Market Research Platform
Local-first market research workspace. Ingest documents, embed into a vector store, semantic-search sources, and draft reports via local or cloud LLMs.
The Problem
Market research means wading through PDFs, decks, spreadsheets, and web pages, then synthesizing them into something a human can act on. General chat tools lose the sources; cloud research tools want your documents on someone else’s servers. For sensitive competitive and strategic material, neither is acceptable.
What I Built

A local-first research workspace. You create projects, ingest sources (PDF, DOCX, PPTX, Excel, and URLs via a Node parser sidecar), and the backend chunks and embeds everything into a LanceDB vector store. From there you semantic-search across sources, generate research drafts with a local Ollama model or a cloud LLM, and export reports — all on your own machine.
Architecture
A multi-service Docker stack, local-first by design:
- Frontend — React + Vite + TypeScript (sources rail, search panel, report panel, settings)
- Backend — FastAPI + Python with LangGraph orchestration, LanceDB for vectors, SQLite for project state, sentence-transformers for embeddings
- Document parsing — PyMuPDF, docling, python-docx/pptx, openpyxl, and pytesseract OCR, isolated in a Node sidecar
- Models — Ollama on the host (default
qwen2.5:14b-instruct), with Anthropic available as a cloud option

This is a workspace a human operates — distinct from Stratagem, which is an autonomous research agent. The platform keeps the analyst in the loop: upload, search, review, and decide, with the documents never leaving your hardware.