Files
firefly_reports/INSTALLATION.md
2026-05-27 13:58:05 +10:00

1.8 KiB

Complete Project Setup Guide for Firefly III Analytics

Prerequisites

  • Python 3.11+
  • Node.js 18+
  • Docker & Docker Compose (for containerized deployment)
  • Git

Manual Project Setup

If the automated init script doesn't work, follow these steps:

1. Create Directory Structure

mkdir -p backend/app/{routers,services,clients}
mkdir -p frontend/src/{components,pages,services,types}
mkdir -p data

2. Backend Setup

Create backend/pyproject.toml:

[project]
name = "firefly-analytics-backend"
version = "0.1.0"
description = "Firefly III Analytics & Reporting Backend"
requires-python = ">=3.11"

dependencies = [
    "fastapi==0.104.1",
    "uvicorn[standard]==0.24.0",
    "httpx==0.25.2",
    "python-dotenv==1.0.0",
    "pydantic==2.5.0",
    "pydantic-settings==2.1.0",
    "sqlalchemy==2.0.23",
    "python-dateutil==2.8.2",
    "apscheduler==3.10.4",
]

[project.optional-dependencies]
dev = [
    "pytest==7.4.3",
    "pytest-asyncio==0.21.1",
    "black==23.12.0",
    "ruff==0.1.8",
]

3. Create .env File

cp .env.example .env
# Edit .env and add your Firefly III API token

4. Install and Run Backend

cd backend
python -m venv venv
# On Windows: venv\Scripts\activate
# On Mac/Linux: source venv/bin/activate
pip install -e .
uvicorn app.main:app --reload

5. Frontend Setup

cd frontend
npx create-react-app . --template typescript
npm install recharts axios
npm start

6. Docker Deployment

docker-compose up -d

API Documentation

Once the backend is running, visit http://localhost:8000/docs for interactive API docs.

Project File Structure (Complete)

All source code files are documented in COMPLETE_SOURCE_CODE.md