Bonanza Admin & Vercado Customer Dashboard

Project Overview

The Bonanza Admin Dashboard is a comprehensive tool designed for the Bonanza team, featuring various dashboards with charts and tables to provide up-to-date data for decision-making. It has been expanded to include a consumer-facing dashboard for Vercado, enabling users to view stats on their sales and inventory.

Development Timeline

  • Start Date: September 2023

Key Features

  • Multiple dashboards for the Bonanza team
  • Consumer-facing dashboard for Vercado (in progress)
  • Real-time data visualization and user experience design

Technologies Used

  • Backend: Python, MySQL, PostgreSQL, Pandas, Polars, AWS
  • Frontend:React, Typescript, Tailwind CSS, Tanstack Router, Tanstack Query

Challenges and Solutions

  1. Data Query Speed:
    • Challenge: Slow data queries from a large dataset dating back to 2008 using MySQL 5.6 without advanced features.
    • Solution:
      • Optimized queries and data processing to reduce execution time from over 10 minutes to less than 5 minutes.
      • Utilized reusable functions and advanced techniques to clean and optimize code.
      • Integrated Polars, an alternative to Pandas written in Rust, for significant speed improvements.
  2. Expanding to Consumer-Facing Dashboard:
    • Challenge: Initially designed for internal use, the dashboard needed to be modified for Vercado customers. This required changing authentication, setting up a new PostgreSQL database, and ensuring secure, private access for different user types.
    • Solution:
      • Modified authentication system and created a PostgreSQL database.
      • Implemented private routes using Tanstack Router to ensure Bonanza users see only the Bonanza dashboard and Vercado users see their own dashboard.
      • Developed a backend Express server to connect to each user’s PostgreSQL database and provide data to the frontend dashboard.
      • Deployed the new server on AWS to ensure scalability and reliability.

Development Process

  1. Backend Development
    • Queried Bonanza’s database and processed data using Python and Pandas.
    • Set up an Express server for Vercado users, connected to PostgreSQL databases, and deployed it on AWS.
  2. Frontend Development
    • Built the frontend with React and Typescript.
    • Developed 13 different dashboards for Bonanza and 2 for Vercado.
    • Implemented private routing and user-specific data access.

Outcome

  • The optimized dashboard now provides faster data retrieval and processing, enhancing the user experience and reducing resource usage on the database.
  • Successfully expanded functionality to serve both internal staff and external customers, ensuring secure and efficient data access.