Self-hostable YouTube competitive intelligence platform.
Track competitor channels, detect every change, and get AI-powered insights — all running locally with full control over your data.
Website · Getting Started · Features · Contributing · Vibe.md
Open Monitor YT is a free, open-source alternative to paid YouTube monitoring tools. It scrapes competitor YouTube channels via Firecrawl, stores a full historical diff of every change, and runs an LLM analysis layer that turns raw data into actionable insights.
100% self-hosted. No cloud dependency. Your data stays on your machine.
| Feature | Description |
|---|---|
| 🔍 Channel Monitoring | Track unlimited competitor YouTube channels with automatic polling |
| 📊 Change Detection | Diff engine catches title, thumbnail, description, tag, and view count changes |
| 🧠 AI Intelligence | A/B test detection, upload schedule analysis, title pattern analysis, content gap analysis, thumbnail style analysis, competitor summaries, trending topic detection |
| 📈 Activity Feed | Infinite scroll feed of all detected changes across tracked channels |
| ⚡ Smart Alerts | Get notified via Email, Slack, Discord, Telegram, or Webhooks |
| 🔀 Channel Comparison | Side-by-side content gap analysis between competitors |
| ⚙️ Admin Panel | Configure LLM provider, Firecrawl, polling intervals, notifications, and AI features from the UI |
| 🐳 Self-Hosted | Docker Compose in one command. Full control over your data |
| 🔑 Any LLM | Works with OpenAI, Anthropic, Ollama, Groq, or any OpenAI-compatible API |
- Frontend: Next.js 15 (App Router), Shadcn/UI, Tailwind CSS, Framer Motion, Recharts
- Backend: Prisma + PostgreSQL, BullMQ + Redis, Firecrawl, OpenAI-compatible LLM API
- Package Manager: pnpm
- Node.js 18+
- PostgreSQL
- Redis
- Firecrawl API key
- LLM API key (OpenAI, Anthropic, Ollama, Groq, or any OpenAI-compatible provider)
# Clone the repository
git clone https://github.com/springmusk026/Open-Monitor-YT.git
cd Open-Monitor-YT
# Install dependencies
pnpm install
# Set up environment
cp .env.example .env
# Edit .env with your database and Redis URLs
# Generate Prisma client and push schema
pnpm db:generate
pnpm db:push
# Start the app
pnpm dev
# Start the worker (in a separate terminal)
pnpm workerVisit http://localhost:3000 and configure your LLM provider and Firecrawl API key in the Admin panel.
docker compose up -dThis starts the app, worker, PostgreSQL, and Redis.
Open-Monitor-YT/
├── app/ # Next.js App Router pages and API routes
├── components/ # React components (UI primitives + feature components)
├── hooks/ # TanStack Query hooks
├── lib/
│ ├── api/ # Axios client + API functions
│ ├── config/ # AppConfig runtime configuration
│ ├── db/ # Prisma client
│ ├── diff/ # Field-level diff engine
│ ├── llm/ # Provider-agnostic LLM client + insight generators
│ ├── scraper/ # Firecrawl client + parser
│ ├── queue/ # BullMQ queue setup
│ └── utils/ # Utilities
├── prisma/ # Database schema
├── types/ # Centralized TypeScript types
└── workers/ # BullMQ worker processes
- VIBE.md — How this project was built with AI assistance
- CONTRIBUTING.md — How to contribute
- SECURITY.md — Security policy
- CODE_OF_CONDUCT.md — Community guidelines
- ISSUES.md — Known issues and workarounds
- CHANGELOG.md — Version history
This project is licensed under the Business Source License 1.1 (BSL-1.1).
- ✅ Personal use — Free to use for personal, non-commercial projects
- ✅ Modifications — Free to modify with proper credit
- ❌ Commercial use — Requires a separate commercial license
See LICENSE for full details.
This project was built with the assistance of AI. See VIBE.md for details.
Built with ❤️ by springmusk026