A full-stack web application for Discounted Cash Flow (DCF) valuation of NVIDIA and other public companies. Built with Svelte 5 and FastAPI.
├── frontend/ # Svelte 5 application
│ ├── src/
│ │ ├── lib/
│ │ │ ├── components/ # UI components
│ │ │ ├── stores/ # Svelte stores (state management)
│ │ │ ├── services/ # API client
│ │ │ └── utils/ # Formatting utilities
│ │ └── routes/ # SvelteKit pages
│ └── package.json
│
├── backend/ # FastAPI application
│ ├── app/
│ │ ├── routers/ # API endpoints
│ │ ├── services/ # Business logic
│ │ │ ├── sec_data_fetcher.py # SEC EDGAR integration
│ │ │ └── data_fetcher.py # Yahoo Finance integration
│ │ └── main.py # FastAPI entry point
│ └── requirements.txt
│
├── data/ # Source data (Excel model)
└── docker-compose.yml # PostgreSQL setup (optional)
cd backend
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
pip install -r requirements.txt
uvicorn app.main:app --reload
The API will be available at http://localhost:8000
cd frontend
npm install
npm run dev
The app will be available at http://localhost:5173
GET /api/data/fetch/{ticker} - Fetch financial data from SEC + Yahoosource=auto|sec|yahooGET /api/data/validate/{ticker} - Validate ticker exists in SEC databaseGET /api/models - List saved modelsPOST /api/models - Create new modelGET /api/models/{id} - Get model by IDPUT /api/models/{id} - Update modelPOST /api/models/{id}/calculate - Run DCF calculationsSEC EDGAR XBRL API (Primary)
Yahoo Finance (Secondary)
MIT
Based on DCF methodology from Aswath Damodaran's valuation framework.