AI-Powered Comment Intelligence & Sentiment Analysis Platform
Scalable microservices platform for collecting, analyzing, and summarizing comments from social media platforms and websites using AI.
CommentInsight is an AI-powered microservices platform designed to collect, analyze, and summarize user comments from several platforms and websites. The system fetches comments from platforms such as YouTube and uses AI-driven sentiment analysis to generate audience insights including positive, negative, and neutral summaries, content recommendations, and overall audience reactions.
Built with Spring Boot microservices architecture, centralized configuration management, API Gateway routing, service discovery, resilience patterns, and secure cloud-based secret management, the platform is designed to be scalable, extensible, and ready for future AI-powered analytics across multiple platforms including Reddit, Amazon Reviews, TikTok, and more.
Client (Postman / Frontend)
↓
API Gateway
↓
Connector Service
↓
Platform Connector Services
↓
External APIs
↓
AI Sentiment Service
comment-insight-parent
├── comment-insight-common
├── config-server
├── discovery-service
├── api-gateway-service
├── connector-service
├── youtube-connector-service
└── sentiment-service
- Microservices architecture
- Separation of concerns
- Shared DTO design
- Platform abstraction
- Externalized configuration
- Secure secret management
- Environment isolation
- Scalable pagination
- AI extensibility
The platform supports scalable pagination using reusable shared DTOs.
pageSizepageTokennextPageTokenhasNextPage
Configurations are managed using:
- Spring Cloud Config Server
- Private Git configuration repository
devqaprod
Secrets are securely managed using:
- HashiCorp HCP Vault Dedicated
- API keys
- Git tokens
- JWT secrets
- Database passwords
Implemented resilience features include:
- Circuit Breaker
- Retry
- Rate Limiting
- Service Discovery
- Resilience4j
- Redis
- Eureka
- Spring Cloud Gateway
- Java 17
- Spring Boot 3
- Spring Cloud
- Maven
- Eureka Discovery Server
- Spring Cloud Gateway
- Spring Cloud Config Server
- Resilience4j
- Spring AI (planned)
- OpenAI API (planned)
- Redis
- HashiCorp Vault
- GitHub
- HCP Vault Dedicated
Before running the project, make sure the following tools and services are installed:
- Java 17+
- Maven 3.9+
- Git
- IntelliJ IDEA (recommended)
- Redis (for rate limiting support)
The project also requires:
- GitHub account
- Clone Private configuration repository
- HashiCorp HCP Vault Dedicated
- YouTube Data API v3 key
Set the following environment variables before running the services:
CONFIG_REPO_URI=your_private_config_repo_url
CONFIG_REPO_USERNAME=your_github_username
CONFIG_REPO_TOKEN=your_github_token
VAULT_HOST=your_vault_host
VAULT_TOKEN=your_vault_token
YOUTUBE_API_KEY=your_youtube_api_keygit clone https://github.com/your-username/comment-insight-parent.gitcd comment-insight-parentmvn clean installThis will:
- Build all microservices
- Install shared modules
- Resolve dependencies
Start the services in the following order:
1. Config Server
2. Discovery Service
3. API Gateway
4. Connector Service
5. YouTube Connector Service
6. Sentiment Service
cd config-server
mvn spring-boot:runcd discovery-service
mvn spring-boot:runcd api-gateway-service
mvn spring-boot:runcd connector-service
mvn spring-boot:runcd youtube-connector-service
mvn spring-boot:runcd sentiment-service
mvn spring-boot:runhttp://localhost:8761
http://localhost:8888
http://localhost:8080/actuator/health
POST /api/connectors/v1/comments/page{
"source": "YOUTUBE",
"url": "https://www.youtube.com/watch?v=example",
"pageSize": 20
}- Configuration files are managed centrally using Spring Cloud Config Server
- Sensitive values are securely managed using HashiCorp Vault
- Shared DTOs and exceptions are located in
comment-insight-common - Pagination is designed as reusable platform-independent architecture
- The system is designed for future multi-platform support
- Fetch total comments
- Fetch paginated comments
- Fetch recent comments
- Support page tokens
- Convert YouTube responses into unified models
The AI sentiment-service analyzes comments and returns:
-
Positive Summary + Count
-
Negative Summary + Count
-
Neutral Summary + Count
-
AI-Generated Overall Summary
-
AI Recommendation
-
AI Video Content Understanding
- Amazon Reviews
- TikTok
- Twitter/X
- Blog comments
- Topic extraction
- Emotion analysis
- Trend detection
- Toxicity detection
- Spam detection
- Multi-language support
- AI-generated reports
- AI agents for autonomous analysis
🚧 Active Development
CommentInsight is currently under active development.
The platform already supports:
- YouTube comment integration
- Pagination support
- Centralized configuration management
- API Gateway routing
- Service discovery
- Resilience patterns
Current development focus includes:
- AI-powered sentiment analysis
- Audience insight generation
- Multi-platform integrations
- AI-generated recommendation summaries
- Advanced analytics features
Planned future integrations include Reddit, Amazon Reviews, TikTok, and additional AI-powered analysis capabilities.
# Copy the example env and fill in your secrets
cp .env.example .env
# Build all images and start the stack
docker compose build && docker compose upThe workflow at .github/workflows/docker-publish.yml automatically builds and pushes all six service images on every push.
| Branch | Tags pushed to Docker Hub |
|---|---|
develop |
commentinsight/<service>:dev |
main / master |
commentinsight/<service>:latest, commentinsight/<service>:<sha> |
| Pull Request | Build only (no push) |
Go to Settings → Secrets and variables → Actions in your GitHub repository and add:
| Secret | Description |
|---|---|
DOCKER_HUB_USERNAME |
Your Docker Hub username |
DOCKER_HUB_TOKEN |
Docker Hub Access Token (create at hub.docker.com → Account Settings → Security) |
| Service | Image |
|---|---|
| Config Server | commentinsight/config-server |
| Discovery Service | commentinsight/discovery-service |
| API Gateway | commentinsight/api-gateway-service |
| Connector Service | commentinsight/connector-service |
| YouTube Connector | commentinsight/youtube-connector-service |
| Sentiment Service | commentinsight/sentiment-service |
MIT License
Girma Moges Teklemariam
Software Engineer | Java | Microservices | AI Enthusiast