A professional AI customer support chatbot built with React frontend and Node.js backend (Gemini API). Designed for SaaS productization and multi-user support.
- Clean minimal ChatGPT-like UI
- Animated background (outside chat container)
- AI response formatting (short answer, headings, bullets)
- Chat memory persisted in localStorage (last 20 messages)
- Authentication (register/login with JWT)
- Multi-user chat history
- Typing simulation effect
- Error handling fallback
AI Customer Support Chatbot for Businesses:
- Answer customer questions
- Handle FAQs
- Assist like a support agent
-
frontend/- React appsrc/components/ChatContainer.jsxsrc/components/MessageBubble.jsxsrc/components/ChatInput.jsxsrc/components/TypingIndicator.jsxsrc/components/WelcomeScreen.jsxstyles/chatbot.css
-
backend/- Node/Expressserver.jsroutes/chatRoutes.jsroutes/authRoutes.jsservices/geminiService.jsservices/authService.jsdata/users.json(created dynamically)
cd backend
npm installSet environment variables in .env:
GEMINI_API_KEY=your_gemini_key
JWT_SECRET=your_secret
Run backend:
npm run devcd frontend
npm install
npm run devPOST /auth/register- { email, password }POST /auth/login- { email, password }POST /api/chat- { message, history }
- Chat history is saved per user in localStorage using key
saas_chat_history_<email>. authRoutesstores users inbackend/data/users.json.
- "What services do you offer?"
- "How can I contact support?"
- Add MongoDB integration.
- Add paid plan support and billing.
- Add admin dashboard for analytics.
- Add proper tests and data validation.