Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
42 changes: 0 additions & 42 deletions .env.example

This file was deleted.

2 changes: 1 addition & 1 deletion .github/workflows/docker-publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ jobs:
labels: ${{ steps.meta.outputs.labels }}
cache-from: type=gha
cache-to: type=gha,mode=max
platforms: linux/amd64
platforms: linux/amd64,linux/arm64

- name: Image digest
run: echo "Image pushed with digest ${{ steps.meta.outputs.digest }}"
151 changes: 119 additions & 32 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -217,62 +217,149 @@ FinanceGPT uses specialized AI tools to analyze your financial data and provide

## �🚀 Quick Start

### Prerequisites
### Option 1: Quick Start (Recommended for Testing)

- **Node.js** 18+ and **pnpm**
- **Python** 3.11+
- **Docker** and **Docker Compose**
- **PostgreSQL** 15+
The fastest way to try FinanceGPT:

### Installation
```bash
# 1. Clone the repository
git clone https://github.com/yourusername/FinanceGPT.git
cd FinanceGPT

# 2. Run the quick start script
chmod +x start-financegpt.sh
./start-financegpt.sh
```

This uses pre-built Docker images and requires minimal configuration. Access the app at **http://localhost:3000**

### Option 2: Development Setup

For development with full customization:

#### Prerequisites

- **Docker** and **Docker Compose** (required)
- **Node.js** 18+ and **pnpm** (for frontend development)
- **Python** 3.11+ (for backend development)

#### Required Environment Variables

1. **Clone the repository**
Before starting, you **must** configure these essential variables:

1. **Create backend environment file:**
```bash
git clone https://github.com/yourusername/FinanceGPT.git
cd FinanceGPT
cp financegpt_backend/.env.example financegpt_backend/.env
```

2. **Set up environment variables**
2. **Edit `financegpt_backend/.env` and set these required variables:**

```env
# === REQUIRED: LLM API Key ===
# You MUST configure at least one LLM provider for FinanceGPT to work
# Get your API key from the respective provider:

# OpenAI (recommended for best results)
OPENAI_API_KEY=sk-...

# OR Anthropic Claude
ANTHROPIC_API_KEY=sk-ant-...

# OR Google Gemini (free tier available)
GOOGLE_API_KEY=AIza...

# === REQUIRED: Plaid (for bank account connections) ===
# Sign up at https://dashboard.plaid.com/team/keys
PLAID_CLIENT_ID=your_plaid_client_id
PLAID_SECRET=your_plaid_secret
PLAID_ENV=sandbox # Use 'sandbox' for testing

# === REQUIRED: Security ===
SECRET_KEY=your-random-secret-key-change-this-in-production

# === Optional: Document Processing ===
# Only needed if you want to parse PDFs/documents
# Get free API key from https://unstructured.io/
# UNSTRUCTURED_API_KEY=your_key_here
```

3. **Create frontend environment file:**
```bash
# Copy example env files
cp financegpt_web/.env.example financegpt_web/.env.local
cp financegpt_backend/.env.example financegpt_backend/.env
```

3. **Start the services with Docker**
```bash
docker-compose up -d
Edit `financegpt_web/.env.local`:
```env
# Backend API URL
NEXT_PUBLIC_FASTAPI_BACKEND_URL=http://localhost:8000

# Auth type (LOCAL or GOOGLE)
NEXT_PUBLIC_FASTAPI_BACKEND_AUTH_TYPE=LOCAL

# Document parsing service
NEXT_PUBLIC_ETL_SERVICE=DOCLING
```

4. **Install frontend dependencies**
#### Installation Steps

1. **Start infrastructure services (PostgreSQL, Redis, etc.)**
```bash
cd financegpt_web
pnpm install
pnpm dev
docker-compose up -d db redis electric pgadmin
```

5. **Install backend dependencies**
2. **Install and run backend**
```bash
cd ../financegpt_backend
cd financegpt_backend

# Create virtual environment
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
pip install -r requirements.txt
```

6. **Run database migrations**
```bash

# Install dependencies
pip install -e .
# Run database migrations
alembic upgrade head

# Start the backend server
uvicorn main:app --reload --host 0.0.0.0 --port 8000
```

7. **Start the backend**
3. **In a new terminal, install and run frontend**
```bash
uvicorn main:app --reload
cd financegpt_web

# Install dependencies
pnpm install

# Start development server
pnpm dev
```

8. **Access the application**
- Frontend: http://localhost:3000
- Backend API: http://localhost:8000
- API Docs: http://localhost:8000/docs
4. **Access the application**
- 🌐 **Frontend**: http://localhost:3000
- 🔧 **Backend API**: http://localhost:8000
- 📚 **API Documentation**: http://localhost:8000/docs
- 🗄️ **pgAdmin** (Database UI): http://localhost:5050
- Email: `[email protected]`
- Password: `financegpt`

### Option 3: Full Docker Deployment

Build and run everything with Docker:

```bash
# Build and start all services
docker-compose up -d

# View logs
docker-compose logs -f

# Stop all services
docker-compose down
```

Access at **http://localhost:3000**

---

Expand Down
Loading
Loading