AI-powered streaming discovery layer built with a scalable architecture.
Features • Architecture • Quick Start • Development • Roadmap
StreamMind AI is an open-source, extension-first AI-powered movie discovery platform. Users connect their own LLM API key (BYOK — Bring Your Own Key) and receive intelligent, hallucination-free movie recommendations powered by real catalog data from TMDB.
This is NOT another "call ChatGPT and show the result" project.
StreamMind implements:
- Strict LLM output validation with Zod schemas
- Hallucination detection (rejects movies not in the catalog)
- Automatic retry on invalid responses
- Dependency-inverted provider architecture
- Production-grade security practices
- 🧠 AI-Powered Recommendations — Natural language → intelligent movie suggestions
- 🔑 BYOK (Bring Your Own Key) — Your API key, your cost, your privacy
- 🎬 Real Catalog Data — Powered by TMDB, not hallucinated movies
- ✅ Hallucination Prevention — Every recommendation is cross-checked against the catalog
- 🔌 Extension-First — Chrome Extension (Manifest V3) as the primary interface
- 🏗 Modular Architecture — Clean separation of concerns, ready for SaaS
- 🌙 Dark Mode UI — Elegant, modern interface inspired by Vercel & Linear
- 🛡 Security-First — API keys never leave your device
┌──────────────────────────────────────────────────────┐
│ Chrome Extension │
│ React + TypeScript + Tailwind + Manifest V3 │
│ │
│ ┌─────────┐ ┌───────────┐ ┌──────────────┐ │
│ │ Setup │ │ Search │ │ Movie Cards │ │
│ │ (BYOK) │ │ View │ │ (Results) │ │
│ └─────────┘ └─────┬─────┘ └──────────────┘ │
└──────────────────────┼───────────────────────────────┘
│ HTTP (API Key per-request)
┌──────────────────────┼───────────────────────────────┐
│ Backend API (Fastify) │
│ │
│ ┌─────────────────┐ ┌──────────────────────────┐ │
│ │ Recommendation │ │ Input Sanitization │ │
│ │ Service │ │ (Prompt Injection Guard) │ │
│ └────────┬────────┘ └──────────────────────────┘ │
│ │ │
│ ┌────────┴────────┐ ┌──────────────────────────┐ │
│ │ LLM Orchestrator│ │ Catalog Service │ │
│ │(Retry+Validate) │ │ (TMDB Adapter) │ │
│ └────────┬────────┘ └──────────────────────────┘ │
│ │ │
│ ┌────────┴────────────────────────────────────┐ │
│ │ LLM Provider Interface │ │
│ │ ┌──────────┐ ┌───────────┐ ┌──────────┐ │ │
│ │ │ OpenAI │ │ Anthropic │ │ Google │ │ │
│ │ │ Adapter │ │ (TODO) │ │ (TODO) │ │ │
│ │ └──────────┘ └───────────┘ └──────────┘ │ │
│ └─────────────────────────────────────────────┘ │
└──────────────────────────────────────────────────────┘
For detailed architecture decisions, see ARCHITECTURE.md.
- Node.js ≥ 18
- pnpm ≥ 8
- TMDB API Key — Get one free
- OpenAI API Key — Get one here
git clone https://github.com/your-username/streammind-ai.git
cd streammind-ai
pnpm installcp .env.example .env
# Edit .env with your TMDB_API_KEYpnpm buildcd apps/api
pnpm dev- Build the extension:
cd apps/extension && pnpm build - Open Chrome →
chrome://extensions/ - Enable "Developer mode"
- Click "Load unpacked" → select
apps/extension/dist - Click the StreamMind icon in the toolbar
- Enter your OpenAI API key in the setup screen
- Start discovering movies!
streammind-ai/
├── apps/
│ ├── api/ # Fastify backend server
│ └── extension/ # Chrome extension (React + Vite)
├── packages/
│ ├── shared-types/ # Zod schemas + TypeScript types
│ ├── llm-adapter/ # LLM orchestration layer
│ ├── catalog-core/ # TMDB integration
│ └── recommendation-core/ # Business logic
├── docs/ # Additional documentation
└── .github/ # CI/CD workflows
| Command | Description |
|---|---|
pnpm dev |
Start all packages in watch mode |
pnpm build |
Build all packages |
pnpm typecheck |
Run TypeScript checks |
pnpm lint |
Lint all packages |
pnpm test |
Run all tests |
pnpm clean |
Remove all build artifacts |
StreamMind AI takes security seriously:
- API keys are stored locally only — encrypted by Chrome's storage API
- Keys are NEVER logged — not in the backend, not in the extension
- Keys are NEVER stored server-side — passed per-request, then discarded
- Input sanitization — protects against prompt injection
- LLM output validation — prevents hallucinated data from reaching the user
- Rate limiting — built into the backend
See ARCHITECTURE.md for detailed security considerations.
- Chrome Extension (Manifest V3)
- BYOK (OpenAI)
- TMDB integration
- Hallucination prevention
- Dark mode UI
- Anthropic Claude adapter
- Google Gemini adapter
- Response caching (Redis)
- Improved ranking algorithm
- User taste profiles
- Hybrid recommendation engine
- Vector database for semantic search
- Billing integration
- Multi-region deployment
See ROADMAP.md for the full roadmap.
We welcome contributions! Please read our Contributing Guide before submitting a PR.
Copyright © 2026 DaviStarlight. All rights reserved. See LICENSE for details.
Built with ❤️ and clean architecture principles.
