A modern full-stack application that leverages AI to enhance product review experiences with intelligent chatbot assistance and automated review summarization.
-
🤖 Intelligent AI Chatbot
- Interactive conversational interface powered by OpenAI, Hugging Face, and Ollama
- Context-aware responses with real-time typing indicators
- Sound notifications for enhanced user experience
- Clean, modern chat interface with message history
-
📝 Smart Review Management
- Comprehensive product review display with star ratings
- Review skeleton loading for smooth user experience
- Structured review data with author information and timestamps
- Real-time review updates and management
-
🧠 AI-Powered Review Summarization
- Automated review analysis and summarization using LLMs
- Intelligent extraction of key insights from customer feedback
- Context-aware summaries that help users make faster decisions
- Support for multiple AI model providers (OpenAI, Hugging Face, Ollama)
-
💾 Robust Data Management
- MySQL database with Prisma ORM for reliable data persistence
- Structured schema for products, reviews, summaries, and conversations
- Database migrations for easy deployment and updates
- Optimized queries for performance at scale
-
🏗️ Modern Architecture
- Monorepo structure with TypeScript throughout
- Clean separation between client and server packages
- RESTful API design with Express.js backend
- React frontend with modern hooks and state management
-
🎨 Premium UI/UX
- Responsive design built with React and TailwindCSS
- Modern component library with shadcn/ui integration
- Accessible design following best practices
- Smooth animations and loading states
- Mobile-first responsive design
-
⚡ High Performance
- Bun runtime for ultra-fast development and production
- React Query for efficient data fetching and caching
- Optimized build process with Vite
- Hot module replacement for rapid development
-
🔧 Developer Experience
- TypeScript for type safety across the entire stack
- ESLint and Prettier for code quality and consistency
- Husky for git hooks and automated quality checks
- Concurrent development mode for seamless workflow
- Bun - JavaScript runtime and package manager
- MySQL - Database server
- Node.js - For tooling compatibility
- OpenAI API key (or Hugging Face/Ollama setup)
-
Clone the repository:
git clone https://github.com/thepembeweb/ai-reviews-app.git cd ai-reviews-app -
Install dependencies:
bun install
-
Set up environment variables:
cd packages/server cp .env.example .envEdit the
.envfile:DATABASE_URL="mysql://username:password@localhost:3306/reviews_db" OPENAI_API_KEY="your-openai-api-key-here"
-
Set up the database:
# Generate Prisma client bunx prisma generate # Run database migrations bunx prisma migrate dev
-
Start the development servers:
# From the root directory cd ../.. bun run dev
-
Access the application:
- Frontend:
http://localhost:5173 - Backend API:
http://localhost:3000 - Database Studio:
bunx prisma studio(from packages/server)
- Frontend:
├── packages/
│ ├── client/ # React frontend application
│ │ ├── src/
│ │ │ ├── components/ # Reusable UI components
│ │ │ │ ├── chat/ # Chatbot components
│ │ │ │ ├── reviews/ # Review management components
│ │ │ │ └── ui/ # Base UI components
│ │ │ └── lib/ # Utilities and helpers
│ │ └── public/ # Static assets
│ └── server/ # Express.js backend
│ ├── controllers/ # API request handlers
│ ├── services/ # Business logic layer
│ ├── repositories/ # Data access layer
│ ├── llm/ # AI model integration
│ └── prisma/ # Database schema and migrations
└── index.ts # Development orchestrator
GET /api/reviews- Fetch all reviewsPOST /api/reviews- Create a new reviewGET /api/reviews/:id- Get specific reviewPUT /api/reviews/:id- Update review
POST /api/chat- Send message to AI chatbotGET /api/chat/conversations- Get chat history
POST /api/summaries/generate- Generate AI summary for product reviewsGET /api/summaries/:productId- Get existing summary
-
Frontend:
- React - UI framework
- TypeScript - Type safety
- Vite - Build tool
- TailwindCSS - Styling
- React Query - Data fetching
- Axios - HTTP client
-
Backend:
- Bun - JavaScript runtime
- Express.js - Web framework
- Prisma - Database ORM
- MySQL - Database
- Zod - Schema validation
-
AI Integration:
- OpenAI API - GPT models
- Hugging Face - Open-source models
- Ollama - Local model execution
- Pemberai Sweto - Initial work - AI Chatbot
- This project is licensed under the MIT License - see the LICENSE.md file for details
- Copyright 2025 © Pemberai Sweto.