An automated AI-powered system that fetches financial news daily, analyzes sentiment using Claude AI, and delivers personalized investment insights via a morning email digest and a real-time dashboard.
Built by Arya Patel.
- Fetches financial news every morning at 7 AM via NewsAPI
- Tracks your personal watchlist + top 10 most actively traded stocks
- Uses Claude AI to score each article as bullish, bearish, or neutral
- Stores results in Supabase for historical trend analysis
- Sends a morning email digest with investment signals before the market opens
- Displays a real-time React dashboard showing 30-day sentiment trends
| Layer | Technology |
|---|---|
| Backend | Python 3.10, FastAPI |
| Scheduler | Apache Airflow |
| AI | Anthropic Claude API |
| News | NewsAPI + Financial Modeling Prep |
| Database | Supabase (PostgreSQL) |
| Frontend | React, Chart.js, Tailwind CSS |
| Gmail SMTP (dev), SendGrid (prod) | |
| Containerization | Docker |
| CI/CD | GitHub Actions |
stock-market/
├── dags/ # Airflow DAG (daily pipeline)
├── src/
│ └── sentiment_analyzer/
│ ├── news/ # fetch_financial_news, fetch_top_tickers
│ ├── sentiment/ # analyze_sentiment (Claude API)
│ ├── database/ # store_sentiment_result (Supabase)
│ ├── email/ # send_email_digest
│ ├── api/ # FastAPI endpoints
│ └── utils/ # logger, config
├── tests/ # Unit tests (pytest)
├── .github/workflows/ # CI/CD (GitHub Actions)
├── Dockerfile
├── docker-compose.yaml
└── requirements.txt
git clone https://github.com/apate476/Stock-Market.git
cd Stock-Marketpython -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activatepip install -r requirements.txtcp .env.example .envFill in your keys in .env:
ANTHROPIC_API_KEY=
NEWS_API_KEY=
FMP_API_KEY=
SUPABASE_URL=
SUPABASE_SERVICE_KEY=
EMAIL_SENDER=
EMAIL_PASSWORD=
pytest tests/ --cov=src --cov-report=term-missinguvicorn src.sentiment_analyzer.api.main:app --reloadfetch_financial_news → analyze_sentiment → store_sentiment_result → send_email_digest
Each step is an Airflow task. Data passes between tasks via XCom.
Currently tracking: NVDA, SPCX, MSFT, BRK-B, JPM + top 10 most active stocks fetched daily from Financial Modeling Prep.
MIT License — see LICENSE for details.