Tupaia

a web-based data aggregation, analysis and visualisation platform that pulls data from multiple sources to map health systems by region, country, province facility or village.

Sep 2020 - Nov 20222 years duration
Project Overview
Tupaia Dashboard
React.jsNode.jsPostgreSQLTypeScriptAWSMapboxrecharts
About the Project

My Role

As software engineer, I was responsible for implementing real-time new data dashboards and visualisations on map, integrating with existing data sources and optimizing the database performance, client supports and bug fixes.

Key Responsibilities

  • Developed data transformation and aggregation tool for displaying data on geographical map
  • Mentored and helped new junior developer to get onboard
  • Provided technical support to internal team and clients

Technical Implementation

Technical Implementation
Key features and technical solutions implemented in the project

Implementation Details

A comprehensive data visualization platform that enables users to both transform raw data and create visualizations in a few clicks.

Technical Challenges

  • Adapting existing transformation logic to a new unified data pipeline platform
  • Previewing data in a table format

Implementation Highlights

  • • Standarised transformation logic for each pipeline
  • • Drag and drop interface for data pipeline
Data table feature

Implementation Details

Implemented a multiple map overlays feature on existing map, allowing users to overlay multiple data sources on the same map.

Technical Challenges

  • Refactoring existing codebase to support multiple map overlays.
  • Making sure all different map overlays are compatible with each other.
  • Ensuring the map overlays are responsive and work on all devices.

Implementation Highlights

  • • Storing map overlays ids on URL query params
  • • Combining indicators for multiple map overlays
Multiple map overlays feature

Implementation Details

Developed a dashboards to PDF tool transforming multiple dashboards into one single PDF file

Technical Challenges

  • Ensuring data consistency from dashboards to PDF
  • Multiple dashboards data taking a lot of time to process
  • Previewing the PDF file before downloading
  • Editing label for each dashboard before download

Implementation Highlights

  • • React query caching implementation
  • • PDF pagination preview on the fly
  • • Role-based access control implementation
  • • Secure API endpoints for dashboards to PDF worker
Chart to PDF conversion feature
Dashboard to PDF conversion interface showing multiple charts being exported

Implementation Details

Developed a favorite button (♡) on dashboard. Users can save their frequent visited dashboards to their own favorite collection, which reduces time to locate dashboards among hundreds of them.

Implementation Highlights

  • • Integration with existing database user schema to store saved dashboards
  • • Lazy update of new favorite dashboards
Favorite dashboard feature