The overall goal of this application is to build a data interface for earnings report data exploration.
Objectives for AI / search component of this application:
-
Plot the returns of an alternative SPY that weights securities by earnings rather than market cap.
-
What is the right sheet to find cost of goods sold? (eg)
- edgartools - fetch corporate data from the Edgar webpage
- yfinance - fetch market data from yahoo finance
- streamlit - data visualization and manipulation
No ag-grid. It's massively slower than the streamlit builtin (due to JSON vs arrow encodings, I guess)
streamlit run app/Home.py
JavaScript for the Streamlit app is authored under frontend/src/ and built into app/assets/js/:
cd frontend
npm install
npm run build # one-off build
npm run dev # rebuild on file changes