Skip to main content

Hello Goblin Webapp

AI-powered personal financial management system with automated analysis, trading capabilities, and multi-source data integration.

Architecture

┌─────────────────────────────────────────────────────────────────┐
│ HELLO GOBLIN WEBAPP │
├─────────────────────────────────────────────────────────────────┤
│ │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────────┐ │
│ │ Frontend │ │ Backend │ │ Task Queue │ │
│ │ React 18 │◀───▶│ Django 5 │◀───▶│ Celery + Beat │ │
│ │ :3001 │ │ :8001 │ │ │ │
│ └──────────────┘ └──────────────┘ └──────────────────┘ │
│ │ │ │
│ ▼ ▼ │
│ ┌──────────────────────────────────────────┐ │
│ │ Data Layer │ │
│ │ PostgreSQL 16 │ Redis 7 │ │
│ │ :5433 │ :6380 │ │
│ └──────────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────┘
│ │ │
▼ ▼ ▼
┌──────────┐ ┌──────────┐ ┌──────────┐
│ Plaid │ │ Monarch │ │ Schwab │
│ Banking │ │ Money │ │ Trading │
└──────────┘ └──────────┘ └──────────┘
│ │ │
└────────────────────┴────────────────────┘


┌──────────┐
│ Claude │
│ AI │
└──────────┘

Services

ServiceTechnologyPortPurpose
frontendReact 18 + TypeScript3001Web UI
backendDjango 5 + DRF8001REST API
docsDocusaurus + nginx3002Documentation
postgresPostgreSQL 165433Primary database
redisRedis 76380Cache + message broker
celery_workerCelery 5.3-Background tasks
celery_beatCelery Beat-Scheduled tasks

Backend Apps

AppPurpose
accountsUser authentication and profiles
financeCore financial models (accounts, transactions, debt)
integrationsExternal API clients (Plaid, Monarch, Schwab)
analyticsCalculations, P&L, balance sheets
ai_agentClaude analysis engine
notificationsMulti-channel alerts (SMS, email, push)
terminalInteractive CLI interface
goblinGoblin Core coordination

Quick Start

# Start all services
goblin app up

# View logs
goblin app logs

# Open in browser
goblin app open

# Stop services
goblin app down

URLs

Local Development

URLDescription
http://localhost:3001Frontend application
http://localhost:8001/apiREST API
http://localhost:8001/adminDjango admin
http://localhost:8001/api/schema/swagger-ui/Swagger UI
http://localhost:3002Documentation

Production

URLDescription
https://hellogobl.inMain application
https://hellogobl.in/apiREST API
https://docs.hellogobl.inDocumentation

Configuration

Environment variables in webapp/backend/.env:

# Database
DATABASE_URL=postgres://finance_user:password@postgres:5432/finance_db

# API Keys
ANTHROPIC_API_KEY=your-key
PLAID_CLIENT_ID=your-id
PLAID_SECRET=your-secret
MONARCH_EMAIL=your-email
MONARCH_PASSWORD=your-password
SCHWAB_API_KEY=your-key

# Notifications
TWILIO_ACCOUNT_SID=your-sid
TWILIO_AUTH_TOKEN=your-token
SENDGRID_API_KEY=your-key