An enterprise-grade competitive intelligence platform that combines automated market surveillance with AIOps capabilities. It continuously monitors competitors, processes changes and delivers actionable insights to sales teams.
See TECHNICAL_DOCS.md for full architecture, API reference, and contributing guidelines.
- Multi-Source Data Ingestion: Web scraping, hiring signals, social media, and news monitoring
- AI-Powered Analysis: intelligent processing and insight generation
- Dynamic Battlecards: Auto-updated competitive battlecards synced to Notion
- Real-Time Alerts: Slack notifications for high-impact competitive changes
- AIOps & Observability: LogBERT-based anomaly detection and root cause analysis
- Voice Assistant: "Jarvis-like" voice control to query platform data and get spoken summaries
| Technology | Version | Purpose |
|---|---|---|
| Next.js | 14.0.4 | React framework |
| TypeScript | 5.3.3 | Type safety |
| TanStack React Query | 5.13.4 | Data fetching |
| Zustand | 4.4.7 | State management |
| Chart.js | 4.5.1 | Data visualization |
| Lucide React | 0.294.0 | Icons |
| Technology | Version | Purpose |
|---|---|---|
| FastAPI | 0.104.1 | Web framework |
| Uvicorn | 0.24.0 | ASGI server |
| Pydantic | 2.5.0 | Data validation |
| SQLAlchemy | 2.0.23 | ORM |
| Alembic | 1.12.1 | Database migrations |
| Celery | 5.3.4 | Async task queue |
| Technology | Version | Purpose |
|---|---|---|
| PostgreSQL | 15 (Alpine) | Primary database |
| Redis | 7 (Alpine) | Caching & message broker |
| ChromaDB | 0.4.22 | Vector database |
| Technology | Version | Purpose |
|---|---|---|
| PyTorch | 2.2.0 | ML framework |
| Transformers | 4.35.2 | NLP models (LogBERT) |
| Sentence-Transformers | 2.2.2 | Embeddings |
| Google Gemini AI | 0.3.2 | LLM integration |
| Technology | Purpose |
|---|---|
| Slack SDK | Notifications |
| Simple Salesforce | CRM integration |
| Notion Client | Battlecard sync |
| n8n | Workflow automation |
| Technology | Purpose |
|---|---|
| BeautifulSoup4 | HTML parsing |
| Playwright | Browser automation |
| Selenium | Browser automation |
| aiohttp | HTTP clients |
| Technology | Purpose |
|---|---|
| Docker & Docker Compose | Containerization |
| Loguru | Logging |
| Sentry SDK | Error monitoring |
| Component | Technology | Description |
|---|---|---|
| Password Hashing | bcrypt | Secure password storage |
| Token Auth | JWT (python-jose) | Stateless authentication |
| Component | Technology | Description |
|---|---|---|
| Speech-to-Text | Web Speech API | Browser's native SpeechRecognition |
| LLM Processing | Google Gemini 2.5 Flash | Context-aware query answering |
| Text-to-Speech | Web Speech API | Browser's native SpeechSynthesis |
- Docker & Docker Compose
- Python 3.11+ (for local tools)
- Node.js 18+ (for local frontend dev)
# Clone repository
git clone https://github.com/yourusername/VigilAI.git
cd VigilAI
# Copy environment file
Copy-Item .env.example .envCRITICAL: Edit .env and add your API keys. See USER.md for the setup wizard.
# Start all services
docker-compose up -d
# Check status
docker-compose ps
# View logs
docker-compose logs -f backend- Frontend Dashboard: http://localhost:3000
- Backend API: http://localhost:8000
- API Documentation: http://localhost:8000/docs
- N8N Automation: http://localhost:5678
- Look for the Microphone Icon 🎙️ in the bottom-right corner of any page.
- Click to activate.
- Ask a question:
- "What is the status of Competitor X?"
- "Summarize the latest market news."
- "Are there any system errors?"
- VigilAI will speak the answer back to you using the platform's aggregated data!
- Go to the Competitors page.
- Add a competitor (Domain + Name).
- Click Scrape to fetch initial data.
- View generated Battlecards to see Strengths, Weaknesses, and Kill Points.
- Ensure you have configured Slack in
.env. - You will receive notifications in
#competitive-intelwhen:- A competitor changes pricing.
- A new blog post is published.
- A serious system anomaly occurs.
Built with ❤️ for smarter competitive intelligence