SignalX is a local-first startup and finance workbench with three workflows:
Ideatefor shaping rough ideas and reasoningEvaluatefor structured pressure-testing and reportsExpertfor domain discussion, concept learning, pre-screening, and deck analysis
It is built to feel more like a sharp operator than a generic chatbot:
- it stays two-way instead of dumping generic advice
- it shows evidence and grounded reasoning in
Expert - it supports both open-source local runtime and API-key runtime
- it stores sessions locally so users can resume work
- it can turn an
Ideatesession into a refined pitch artifact
Best path if you want the easiest local setup and prefer providers like Groq, Cerebras, OpenAI, OpenRouter, Anthropic, or Gemini.
git clone <your-repo-url>
cd signalx
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
npm install
npm --prefix frontend install
cp .env.example .env
npm run mvp:apiOpen http://127.0.0.1:7860, choose Use API key, then pick your provider.
If you want the app to stay local and avoid paid APIs, use the same setup steps above, then:
ollama pull llama3.2
# Optional sharper local model if your machine can handle it:
ollama pull qwen3:8b
npm run mvpSignalX will auto-start Ollama if it is installed and not already running.
- open-ended discussion
- sharper framing of problem, customer, wedge, and pitch
- uploads and session resume
- refined pitch generation from the conversation
Idea reviewfor adaptive pressure-testing of a startup ideaDeck reviewfor direct.pdfand.pptxpitch-deck assessment inside Evaluate- structured reports with verdict, evidence gaps, weak claims, and next steps
- slide/page-aware feedback instead of a generic one-shot chatbot answer
- concept explanations and comparisons
- evidence-backed answers using the bundled knowledge corpus
- pre-screening and deck analysis
- source, confidence, and analysis panels in the workbench
Single-port local app with open-source models.
- serves frontend and backend together on
http://127.0.0.1:7860 - auto-starts Ollama if needed
- good default for solo local use
Single-port local app without Ollama startup.
- serves frontend and backend together on
http://127.0.0.1:7860 - optimized for API-key-based usage
- supports
groq,cerebras,openai,openrouter,anthropic, andgemini
LAN sharing for people on the same network.
Frontend and backend split for active development.
- frontend:
http://127.0.0.1:5173 - backend:
http://127.0.0.1:8000
ollama- recommended local fast model:
llama3.2:latest - optional sharper local model:
qwen3:8b
groqcerebrasopenaiopenrouteranthropicgemini
API keys can be entered in the UI for a session or exported in the shell before launch. For public deployments, set the provider key on the server so visitors do not need to bring their own key.
Example:
export GROQ_API_KEY=...
npm run mvp:apiFast hosted open-weight defaults:
Groq:openai/gpt-oss-20bfor Fast,openai/gpt-oss-120bfor SharperCerebras:gpt-oss-120b
Frontier OpenAI defaults:
OpenAI:gpt-5.4-minifor Fast,gpt-5.5for Sharper
Evaluate now has two modes:
Idea reviewDeck review
Deck review is meant for serious pitch-deck feedback, not a prompt hack inside chat.
What it does:
- reads uploaded
.pdfand.pptxdecks into an ordered slide/page artifact - evaluates the deck against the built-in rubric inside
Evaluate - reports what is working, what is weak, what is unproven, and what is still missing
- cites slide/page references where possible
- marks missing material as
not shown,unclear, orunverifiedinstead of guessing
Important runtime behavior:
- if the active model supports vision and the deck has renderable slide/page images, the review can assess slides more directly
- if the active model is text-only, SignalX runs a bounded transcript review from extracted deck text and explicitly avoids fake visual claims
Qwen2.5-VLis the recommended local Ollama path for stronger deck reviewGemma 3is a lighter local fallback when you want multimodal support on a smaller setup
If you update the deck or improve the review pipeline, re-run Deck review to generate a fresh report. Existing saved reports do not automatically rewrite themselves.
The Expert workbench ships with a bundled JSON corpus under knowledge_base/expert/.
That means:
- clone-and-run does not depend on a private
/Users/.../Desktop/datapath /api/healthreports whether the Expert corpus loaded- local users and hosted deployments read from the same bundled source by default
frontend/- React + Vite UIbackend/- FastAPI API and servicesknowledge_base/expert/- bundled Expert corpusdata/- local runtime state, sessions, uploads, exportsmemory.py- SQLite persistencesignalx_app.py- single-port launcherdocs/- runbook, architecture, and deployment notes
For the current codebase, the cleanest first public deployment is Render.
Why:
- the app is a single long-running
React + FastAPIservice - it uses SQLite and uploaded files on disk
- it expects same-origin frontend and API behavior
- the repo already includes
render.yamlplus a deployment checklist
Use:
- Execution Guide for local and dev commands
- Deployment Checklist for hosting
npm run mvp
npm run mvp:api
npm run mvp:lan
npm run admin
npm run dev
npm run build
npm run knowledge:vcSignalXis now a three-workflow MVP:Ideate,Evaluate,Expert- both open-source and API-key runtime paths are supported
- the Expert corpus is bundled in the repo
- local API-key mode works without Ollama
Evaluatesupports bothIdea reviewand structuredDeck review- long analytical answers auto-continue once when providers stop on length
- hosted provider keys can now be configured server-side for public demos
- session history, uploads, and reports persist locally