# Zaman Bank - AI Financial Goal Tracking Chatbot
AI-powered financial goal tracking chatbot for Zaman Bank hackathon. The chatbot helps users achieve their financial goals by analyzing bank statements and providing personalized recommendations based on Zaman Bank products.
## 🚀 Quick Start with Docker Compose
### Prerequisites
- **Docker** and **Docker Compose** installed on your system
- **OpenAI API Key** - **Required** for AI-powered features
### Environment Setup
1. **Create a `.env` file** in the root directory:
```bash
# Required: OpenAI API Key
OPENAI_API_KEY=your_openai_api_key_here
# Optional: Database Configuration
DB_USER=zaman_user
DB_PASSWORD=zaman_password
DB_NAME=zaman_db
DB_PORT=5432
# Optional: Application Ports
BACKEND_PORT=8000
FRONTEND_PORT=5173
# Optional: Backend Configuration
MAX_FILE_SIZE=10485760
ENV=development
DEBUG=true
LOG_LEVEL=INFO
ALLOWED_ORIGINS=
http://localhost:5173,http:…
SECRET_KEY=your-secret-key-here
# Optional: Frontend Configuration
VITE_API_URL=
localhost
```
2. **Get your OpenAI API Key:**
- Go to OpenAI Platform
- Create a new API key
- Copy the key to your `.env` file
### Running the Application
**Start all services:**
```bash
docker-compose up -d
```
This will start:
- **PostgreSQL Database** with pgvector extension (port 5432)
- **FastAPI Backend** (port 8000)
- **React Frontend** (port 5173)
**View logs:**
```bash
# All services
docker-compose logs -f
# Specific service
docker-compose logs -f backend
docker-compose logs -f frontend
docker-compose logs -f db
```
**Stop all services:**
```bash
docker-compose down
```
**Stop and remove all data:**
```bash
docker-compose down -v
```
### Accessing the Application
- **Frontend (Chat UI):**
localhost
- **Backend API:**
localhost
- **API Documentation:**
localhost
- **Database:** localhost:5432
### Health Checks
Check if services are running:
```bash
# Backend health
curl
loca …