A modular InfinitePay chatbot prototype, tailored for the InfinitePay platform (see ajuda.infinitepay.io), featuring specialized agents, platform-specific logic, basic security, and initial observability.
See Infrastructure Guide - Docker for complete setup commands.
See Kubernetes Deploy Guide for full deployment steps, including Redis, Backend, Frontend, and URLs for challenge.md.
See Backend Setup - System Architecture for complete architecture diagram and component details.
Local (Development): http://localhost:3000
Production/Kubernetes:
- Via Port-forward: http://localhost:8080
⚠️ Via Ingress: http://chatbot.local (complex setup, not recommended)
Cloud Deploy: See Cloud Deploy Guide for public URLs
Configure the frontend .env file according to the environment:
# Local
VITE_BACKEND_URL=http://localhost:3000
# Production/Kubernetes
# VITE_BACKEND_URL=/api
See Frontend README for detailed instructions.
See Backend Setup for complete request/response/log examples.
- Input sanitization: HTML/JS removal via
SanitizePipe - Prompt injection: Pattern blocking via
PromptGuardService - Details: Security Guide
See Backend Setup for test commands and coverage details.
git clone https://github.com/ElderSam/chatbot.git
cd chatbotChoose your setup:
- 🐳 Docker (recommended): See Infrastructure Guide
- 💻 Local Development: See Backend Setup
- ☸️ Kubernetes: See Infrastructure Guide
- ☁️ Cloud Deploy (Bonus Challenge): See Cloud Deploy Guide
💡 Works without API keys for testing. For full functionality, see Backend Setup.
- RouterAgent → KnowledgeAgent + MathAgent → Specialized responses
- Security: Input sanitization, prompt injection prevention
- Observability: Structured logs in Redis
- Docker: Containerized with health checks
- Kubernetes: Production-ready YAML manifests
- Backend Setup - API keys, local dev, testing, architecture
- Infrastructure Guide - Docker & Kubernetes deployment
- Documentation Hub - Complete documentation index
- Backend: NestJS (TypeScript)
- LLM: Groq (Llama 3.1) + HuggingFace (Embeddings)
- Database: Redis
- Container: Docker + Kubernetes
- Testing: Jest (76 tests passing)
Status: ✅ Production Ready | 🧪 Main features Tested | 🚀 Cloud Native