Logo Lanfrica

Kibebu2024/Amharic-chat-

Domain:

natural language processing

Record type:

software
Creator:
Kib
Host:
# πŸ€– Full-Stack AI Chatbot App A production-ready chatbot built with **React + FastAPI + OpenAI + Docker**, complete with feedback collection, admin dashboard, database, CI/CD, and cloud deployment support. --- ## πŸ›  Tech Stack - **Frontend**: React (Chat UI) - **Backend**: FastAPI (API & OpenAI integration) - **Database**: SQLite via SQLAlchemy - **Admin Dashboard**: Streamlit (for feedback monitoring) - **Containerization**: Docker + docker-compose - **CI/CD**: GitHub Actions --- ## πŸš€ Quick Start (Local with Docker) 1. **Clone the repo** ```bash git clone github.com cd chatbot-app ``` 2. **Create `.env` file** ```bash cp .env.example .env ``` Edit `.env` to include your `OPENAI_API_KEY`. 3. **Run the app** ```bash docker-compose up --build ``` - Frontend: localhost - Backend: localhost --- ## πŸ“Š Admin Dashboard (Streamlit) ```bash streamlit run dashboard.py ``` --- ## βœ… Test Endpoints ```bash pytest test_main.py ``` --- ## 🐳 DockerHub Setup 1. Create an account on DockerHub 2. Create a public or private repository for `chatbot-backend` and `chatbot-frontend` 3. Add your DockerHub credentials to GitHub Actions secrets: - `DOCKER_USERNAME` - `DOCKER_PASSWORD` --- ## 🌐 Deploy on Render (Recommended) .render.yaml β€” Infrastructure as Code for Render Deployment services: type: web name: chatbot-backend env: python buildCommand: "pip install -r requirements.txt" startCommand: "uvicorn app.main:app --host 0.0.0.0 --port 10000" envVars: key: OPENAI_API_KEY sync: false key: FRONTEND_ORIGIN value: chatbot-frontend.onrender.c… plan: free autoDeploy: true type: static name: chatbot-frontend buildCommand: "npm install && npm run build" staticPublishPath: build env: node plan: free autoDeploy: true ## πŸ“ Project Structure ``` . β”œβ”€β”€ backend β”‚ β”œβ”€β”€ main.py β”‚ β”œβ”€β”€ db.py β”‚ β”œβ”€β”€ models.py β”‚ β”œβ”€β”€ test_main.py β”œβ”€β”€ frontend β”‚ β”œβ”€β”€ ChatBotPanel.jsx β”‚ β”œβ”€β”€ Dockerfile β”‚ └── ... β”œβ”€β”€ dash …

Languages