Skip to content

Jason-Wuuuu/VisualBoard

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Visual Board

An interactive data visualization / dashboard.

VisualBoard Screenshot 1 VisualBoard Screenshot 2

Features

Completed Features

  • Interactive stock price chart with historical data visualization, market recommendations and stock analysis tools.
  • Integration with Material-UI for a cohesive layout and responsive design.
  • Real-time stock data fetching using yfinance.
  • Backend developed with FastAPI for high-performance data delivery.
  • Frontend performance optimization using the useMemo hook in React.
  • Backend response time optimization with Redis caching.

Planned Features

  • Integrate LSTM stock price prediction model to provide forecasted market trends.
  • Add live functionality during trading hours:
    • Establish WebSocket connection for live data streaming.
    • Implement frontend components to display live data.
    • Integrate backend services to support live data handling and caching.
    • Design and handle failover and reconnection strategies for live streaming.
  • Generalize dashboard to work with any uploaded CSV file:
    • Implement CSV file parsing and validation.
    • Enable dynamic generation of charts based on CSV data structure.
    • Allow users to map CSV columns to chart parameters.

Prerequisites

Before you begin, ensure you have the following installed:

  • Python
  • FastAPI
  • Node.js
  • npm (usually comes with Node.js)
  • Redis

Getting Started

Backend Setup

  1. Navigate to the server directory:

    cd server
    
  2. Create a virtual environment:

    python -m venv venv
    
  3. Activate the virtual environment:

    On Windows:

    venv\Scripts\activate
    

    On macOS and Linux:

    source venv/bin/activate
    
  4. Install the required Python packages:

    Using pip:

    pip install -r requirements.txt
    

    Or using conda:

    conda create --name visualboard --file requirements.txt
    conda activate visualboard
    
  5. Start Redis server:

    redis-server
    
  6. Start the FastAPI server:

    uvicorn main:app --reload
    

The backend server should now be running on http://localhost:8000.

Frontend Setup

  1. Navigate to the frontend directory:

    cd visual-board
    
  2. Install dependencies:

    npm install
    
  3. Start the Vite development server:

    npm run dev
    

The frontend application should now be accessible at http://localhost:5173.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published