Skip to content
TheoOlteanPublic

About

Portfolio dashboard with LLM advisor to plan + invest

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

100 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 

Repository files navigation

Findust

Findust is a portfolio dashboard with an AI investing advisor.

It is built for people who want one place to:

  • monitor holdings and account performance,
  • look up market data and symbol history,
  • and talk through investment ideas in plain language.

Capabilities

  • Sign up and log in with Supabase auth.
  • Link an Alpaca brokerage account through Alpaca.
  • View portfolio snapshot, positions, open orders, and trade history.
  • Search symbols and inspect historical price charts.
  • Open a company/holding detail panel with deeper position metrics.
  • Chat with the AI advisor (streaming responses), including onboarding and plan approval flows.

Architecture Overview

At a high level:

  • Frontend: React + TypeScript + Vite + Tailwind
  • Backend: FastAPI
  • Auth and user identity: Supabase
  • Market and brokerage integration: Alpaca
  • AI model integrations: Gemini and Claude

Quick Start (Local)

1) Prerequisites

  • Node.js 18+
  • pnpm
  • Python 3.11+ (3.12 works well)
  • A Supabase project
  • Alpaca API keys
  • At least one LLM API key (Gemini or Claude)

2) Frontend env

Create apps/frontend/.env:

VITE_SUPABASE_URL=your_supabase_url
VITE_SUPABASE_PUBLISHABLE_KEY=your_supabase_publishable_key
VITE_API_URL=http://localhost:8000

3) Backend env

Create apps/backend/.env:

apca_api_key_id=your_alpaca_key_id
apca_api_secret_key=your_alpaca_secret_key
alpaca_data_url=https://data.alpaca.markets

encryption_secret_key=your_random_secret

gemini_api_key=your_gemini_key
claude_api_key=your_claude_key

supabase_url=your_supabase_url
supabase_service_key=your_supabase_service_role_key
supabase_jwt_secret=your_supabase_jwt_secret

4) Run backend

cd apps/backend
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
python -m uvicorn main:app --reload --port 8000

5) Run frontend (new terminal)

cd apps/frontend
pnpm install
pnpm dev

Open:

  • Frontend: http://localhost:5173
  • API docs: http://localhost:8000/docs
  • API health: http://localhost:8000/api/health

API Overview

  • GET /api/market/* for symbol search, prices, and history
  • GET/POST /api/portfolio/* for account linking, positions, orders, and trades
  • POST /api/chatbot/* for AI chat sessions and streaming responses
  • GET/PUT /api/users/me for user profile

Repository Structure

apps/
  frontend/   React app (UI, auth flow, dashboard, chatbot panel)
  backend/    FastAPI app (market, portfolio, chatbot, users)

Disclaimer

Findust is a software tool, not financial advice. Always validate decisions with your own judgment and risk tolerance.

About

Portfolio dashboard with LLM advisor to plan + invest

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages