XInsight is an enterprise-grade Twitter analytics platform that transforms a basic Flask proof-of-concept into a secure, scalable, and production-ready system.
This README provides a complete summary of architecture, capabilities, deployment workflows, and operational guidance.
The video below plays directly from the repository (
./demo.mp4).
Note: GitHub does not allow autoplay in README files.
However, autoplay works normally in browsers, GitHub Pages, or any local/hosted documentation viewer.
- Modular, maintainable architecture using Flask application factory pattern
- Production-grade environment using Docker, Gunicorn, Nginx, PostgreSQL, and Redis
- Security features including authentication, RBAC, CSRF protection, rate limiting, and input validation
- Observability built-in: structured logging, health checks, and Prometheus/Grafana compatibility
- Scalable backend with efficient database connections and Redis caching
- Analytics pipeline supporting sentiment analysis, engagement metrics, and trending topics
- Saved searches, search history, and export options (CSV, JSON, PDF)
- Responsive UI using Bootstrap 5 and Chart.js visualizations
- REST API with version-ready structure and standardized error responses
pip install -r requirements.txt
flask --app app run --reload