StockWatch
StockWatch is a high-performance financial dashboard. Alongside standards stock values and graphs with date ranges, It leverages real-time news sentiment analysis and historical market data to provide users with a unique insights on their portfolio. This helps them understand not just what the price is, but why it might be moving.
Tech Stack: React, TypeScript, Node.js, Express, MongoDB, Mongoose, Tailwind CSS, JSON Web Tokens (JWT), Bcrypt, Axios, Recharts, Lucide-React, Finnhub API, Yahoo Finance API, Dotenv, REST API Design
Key Features:
- Hybrid Sentiment Engine : Synthesizes real-time news headlines with intraday price action to generate a 0.1–0.9 bullish-to-bearish score. Batch Market Aggregator: Orchestrates concurrent requests to multiple financial APIs to provide a unified data object for an entire portfolio in a single call. Interactive Market Sparklines: Visualizes historical price trends with toggleable date ranges (1D, 7D, 1M, 1Y) using dynamic interval mapping. Portfolio Asset Tracking: Manages user holdings via a secure watchlist where users can update share quantities and view live asset valuations. Smart Ticker Autocomplete: Provides a debounced search interface that proxies requests through the backend to safely retrieve global stock symbols. Secure JWT Authentication: Implements persistent user sessions and protected API routes using JSON Web Tokens and Bcrypt password encryption. Intelligent Server-Side Caching: Utilizes a TTL (Time-To-Live) cache for sentiment data to minimize redundant API hits and respect provider rate limits. Optimistic UI Updates: Reflects watchlist modifications instantly on the frontend to provide a low-latency user experience while syncing with the database. Responsive Financial Dashboard: Features a dark-mode optimized interface built with Tailwind CSS, designed for high-density data readability.
Soft Skills:
- Architectural Planning: Strategically structured a "Batch Update" system to aggregate disparate data from multiple APIs into a single, optimized JSON response. Security & Data Integrity: Implemented atomic database operations to ensure consistent state management during concurrent portfolio updates. Problem Solving & Rate Limiting: Developed custom throttling mechanisms to maintain application stability while strictly adhering to third-party API provider limits. User-Centric Design: Engineered a high-contrast "Dark Mode" interface specifically optimized for financial data readability and user focus. Debugging Complex State: Successfully resolved synchronization challenges between local React state and asynchronous MongoDB updates during rapid data entry. Performance Optimization: Utilized Mongoose "lean" queries and server-side caching to significantly reduce API latency and database overhead. Adaptability: Pivoted between REST architectural patterns to accommodate the unique data structures of different financial providers (Finnhub vs. Yahoo Finance).