Skip to content
personal project· ongoingProject 10 / 10

Stacklogix Excel Dashboard

Personal Excel ingestion platform — chunked upload, upload history, paginated row retrieval, and drag-and-drop dashboard canvas with KPI/table widgets.

  • React 19
  • Vite
  • Redux Toolkit
  • React DnD
  • Tailwind CSS
  • Express
  • PostgreSQL
  • Sequelize
  • xlsx
  • Swagger

01

Problem

Business users needed to upload Excel files and immediately visualize data in configurable dashboards without manual data entry or developer involvement.

02

Solution

Built Stacklogix personal platform with PostgreSQL-backed Excel APIs (chunked upload, history, paginated rows) and React dashboard canvas with drag-and-drop KPI widgets.

03

Architecture

React 19 + Vite + Redux + React DnD frontend with Tailwind/DaisyUI. Express + PostgreSQL (Sequelize) backend with Swagger docs, xlsx parsing, and Winston logging.

04

Business impact

Enables Excel-to-dashboard workflow for rapid data visualization without custom development per dataset.

Decisions

Technical decisions

  1. 01PostgreSQL for upload metadata and parsed row storage
  2. 02React DnD for intuitive dashboard widget placement
  3. 03Swagger for API documentation during rapid development

Features

Feature breakdown

  • Chunked Excel Upload
  • Upload History
  • Paginated Rows
  • Dashboard Canvas
  • KPI Widgets
  • Excel Parser

Responsibilities

  • Built chunked Excel upload API with upload history and paginated row retrieval
  • Implemented drag-and-drop dashboard canvas with KPI and table widgets
  • Developed Excel preview/parser UI modules in frontend
  • Created user CRUD and theme system

Challenges

  • Handling large Excel files with chunked upload and reliable parsing
  • Designing dashboard canvas that persists widget layouts across sessions

Performance considerations

  • Chunked upload for files >10MB
  • Paginated API for row retrieval
  • Lazy widget rendering

Lessons learned

  • Chunked upload is essential for large Excel files in browser environments
  • Paginated row retrieval prevents memory issues with large datasets

Related engineering library