A full-stack web application featuring a custom, secured web analytics dashboard and reporting system to enable data-driven decision-making for web development.

Role

Software Developer

Timeline
May 2023

Technologies

  • HTML
  • CSS
  • JS
  • Node.js
  • Express.js
  • MySQL
  • ZingChart
  • ZingGrid

Tools

  • DigitalOcean
  • GitHub
  • MySQL Workbench
  • Postman

Background

Web developers often misinterpret analytics data, leading to poor decisions based on inaccurate metrics. For instance, a high bounce rate on a single-page application might be incorrectly seen as poor performance when it's expected behavior.

Solution

This project provides a custom web analytics dashboard to accurately collect, interpret, and analyze user behavior. It enables a shift from assumption-based development to an evidence-based approach, leading to better decisions and results.

Process

  • Started by defining project requirements and identifying the key data points for collection and analysis.
  • Designed the database schema, created the MySQL database, and developed the REST API endpoints with Express.js.
  • Built the front-end dashboard, using ZingChart and ZingGrid to create interactive charts and tables for data visualization.

Final Product

Web Analytics Dashboard final product

Impact

  • Designed scalable full-stack software solutions, covering both front-end and back-end development processes.
  • Developed and managed a well-functioning MySQL database and a secure Node.js application.
  • Implemented critical security features, including user authentication, authorization, and data protection measures.

Reflection

  • Gained experience in an open-ended project that required making independent implementation decisions to meet feature requirements.
  • Learned to effectively justify technical decisions and weigh the tradeoffs between modern trends and older, more reliable technologies.