MarketViewerPro

A stock-analysis dashboard MVP that pulls price history, computes indicators, and surfaces news sentiment in one clean UI. Built to practice end-to-end data → API → frontend workflows. (Research/paper-trading only.)

FastAPIReactViteRechartsyfinanceRSS + sentimentDocker compose
What it does
Pulls OHLCV price history, calculates SMA/EMA/RSI, generates a simple next-day direction signal (with a conservative fallback), and shows RSS news with VADER sentiment.
Why I built it
I wanted a “single pane of glass” to learn market-data plumbing, API design, and dashboard UI work in one project—and iterate from a working MVP.

Architecture (high level)

  • Backend: FastAPI endpoints for health/metrics, prices + indicators, predictions, and news.
  • Frontend: React/Vite UI that calls the API and renders charts (Recharts) + tables.
  • Resilience: basic caching and safe fallbacks when upstream data is missing or slow.

What I built

  • Defined the MVP scope and wired the data flow: ticker → API fetch → indicators → charts.
  • Implemented the UI experience (search, chart + signal view, news feed + filters).
  • Set up a repeatable local run path (README steps + Docker Compose option).

How to run it (local)

  1. Clone the repo and open two terminals.
  2. Backend: cd backend → create/activate venv → pip install -r requirements.txtuvicorn app.main:app --reload
  3. Frontend: cd frontendnpm installnpm run dev

Note: Research/paper-trading only — not financial advice. Signals are experimental.

Next steps (if I took it to v2)

  • Add tests for indicator math + endpoint contracts.
  • Improve data-provider reliability (retries/backoff, clearer stale-data handling).
  • Add auth + rate limiting if deployed publicly.