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.
- 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.
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
- 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)
Create apps/frontend/.env:
VITE_SUPABASE_URL=your_supabase_url
VITE_SUPABASE_PUBLISHABLE_KEY=your_supabase_publishable_key
VITE_API_URL=http://localhost:8000Create 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_secretcd apps/backend
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
python -m uvicorn main:app --reload --port 8000cd apps/frontend
pnpm install
pnpm devOpen:
- Frontend:
http://localhost:5173 - API docs:
http://localhost:8000/docs - API health:
http://localhost:8000/api/health
GET /api/market/*for symbol search, prices, and historyGET/POST /api/portfolio/*for account linking, positions, orders, and tradesPOST /api/chatbot/*for AI chat sessions and streaming responsesGET/PUT /api/users/mefor user profile
apps/
frontend/ React app (UI, auth flow, dashboard, chatbot panel)
backend/ FastAPI app (market, portfolio, chatbot, users)
Findust is a software tool, not financial advice. Always validate decisions with your own judgment and risk tolerance.