This is a hackathon MVP for an AI-powered market research platform that conducts intelligent interviews with respondents. The platform consists of multiple microservices working together to create a complete market research ecosystem.
The platform follows a microservices architecture with the following components:
- Backend Service (Node.js + Express) -
http://localhost:8000 - AI Interviewer Agent (Python FastAPI) -
http://localhost:8001 - Researcher Dashboard (React) -
http://localhost:3000 - Respondent Interview App (React) -
http://localhost:3001
TransfiNitt_Agent_Smith/
├── ai_interviewer/ # AI Agent Service (Python FastAPI)
├── backend/ # Backend API (Node.js + Express)
├── researcher-dashboard/ # Researcher Interface (React)
├── respondent-interview/ # Respondent Interview App (React)
├── docker-compose.yml # Docker orchestration
├── nginx.conf # Load balancer config
└── README.md # Main project documentation
- Technology: Python FastAPI
- Purpose: Intelligent conversation management
- Features:
- Ultra-fast LLM responses using Groq
- Redis-based conversation storage
- Automatic sentiment analysis
- Smart probing for vague responses
- Conversation flow orchestration
Key Endpoints:
POST /agent/start- Initialize interview sessionPOST /agent/chat- Continue conversationPOST /agent/end- Complete interview & get summaryGET /agent/health- Health check
- Technology: Node.js + Express + Prisma
- Purpose: Main API gateway and data management
- Features:
- JWT authentication
- PostgreSQL database with Prisma ORM
- Session management
- Template management
- Integration with AI agent service
- Technology: React + TailwindCSS
- Purpose: Interface for researchers to manage studies
- Features:
- Template creation and management
- Session monitoring
- Respondent management
- Analytics and insights
- Incentive management
- Technology: React + TailwindCSS
- Purpose: Interface for respondents to participate in interviews
- Features:
- Voice-to-text input
- Text-to-speech responses
- Real-time chat interface
- Interview completion tracking
- Responsive design
- Docker and Docker Compose installed
- Git (to clone the repository)
-
Clone the repository:
git clone <repository-url> cd TransfiNitt_Agent_Smith
-
Set up environment variables:
- Copy
.env.exampleto.envin the root directory - Configure database URLs, API keys, and service URLs
- Copy
-
Start all services with Docker Compose:
docker compose up
This single command will start all services:
- Backend Service (Node.js + Express)
- AI Agent Service (Python FastAPI)
- Researcher Dashboard (React)
- Respondent Interview App (React)
- PostgreSQL Database
- Redis Cache
- Nginx Load Balancer
-
Access the platform:
- Researcher Dashboard:
http://localhost:3000 - Respondent Interview:
http://localhost:3001
- Researcher Dashboard:
# Start all services
docker compose up
# Start in background (detached mode)
docker compose up -d
# Stop all services
docker compose down
# View logs
docker compose logs
# View logs for specific service
docker compose logs backend
# Rebuild and start services
docker compose up --build
# Stop and remove volumes
docker compose down -v- Researcher creates interview templates via the dashboard
- System generates interview links for respondents
- Respondents access the interview app and participate in AI-conducted interviews
- AI Agent manages the conversation flow, asks follow-up questions, and analyzes responses
- Researcher reviews results, insights, and analytics through the dashboard
- Person 1: Agent Service (Python FastAPI)
- Person 2: Backend (Node.js Express)
- Person 3: Dashboard (React)
- Person 4: Respondent App (React)
- Person 5: DevOps & Integration
The entire platform is fully containerized for easy deployment and development:
- Single Command Setup:
docker-compose upstarts everything - Individual Dockerfiles for each service
- Docker Compose for orchestration and service dependencies
- Nginx configuration for load balancing
- PostgreSQL and Redis containers included
- No local dependencies required (Node.js, Python, databases)
- JWT-based authentication
- Postgres integration for user management
- Protected routes and API endpoints
- Secure session management
- Intelligent Interviews: AI-powered conversation management
- Real-time Communication: Voice and text input/output
- Sentiment Analysis: Automatic emotion and sentiment tracking
- Template Management: Flexible interview template creation
- Analytics Dashboard: Comprehensive insights and reporting
- Responsive Design: Works across all devices
- Microservices Architecture: Scalable and maintainable
- Backend API:
http://localhost:8000 - AI Agent Service:
http://localhost:8001
Copy .env.example to .env in each service folder and configure:
- Database URLs
- API keys (Groq, Cerebras(optional))
- JWT secrets
- Service URLs
This platform represents a complete solution for conducting AI-powered market research interviews, combining modern web technologies with advanced AI capabilities to create an efficient and user-friendly research experience.