Projects / Humber College + WECCC / Case Study

Turning survey data into
downloadable insight

A one-click CSV generator that converted complex JSON survey data into analyst-ready files. It became the tool that directly enabled WECCC to secure future funding for their community care programme.

Humber College + WECCC
Frontend Developer
2.5 weeks
2
JavaScript Drupal CMS REST API SASS Jest Data Export Programme Evaluation
CSV Generator solution overview
The problem

Survey data trapped in JSON,
unusable for analysis

The Windsor Essex Compassion Care Community (WECCC) collected quality-of-life survey data from hundreds of community members through their digital platform. But all that data lived inside the system as JSON, structured for the application and not for analysis.

Researchers needed to measure pre and post survey interval differences, run group-level comparisons, and produce programme evaluation reports. Without a way to export data cleanly, this meant hours of manual extraction and reformatting work each cycle.

Critically, the programme evaluation report was the primary document used to secure funding for future years. A slow, error-prone process put that funding at risk.

"With a click of a button, the user must be able to generate a CSV file with the latest parsed JSON data at any time." — Client requirement specification
How I approached it

Scoped, built, and shipped in 2.5 weeks

Working as a freelancer within the larger WECCC project, I owned this feature end-to-end, from understanding the data model to delivering a tested, integrated tool.

🗺️

Understand

Mapped the JSON data structure and client specifications for numerical value conversion

⚙️

Design logic

Planned the parsing and conversion functions, mapping every JSON value to its numerical equivalent

💻

Build

Implemented the generator in JavaScript, integrated with Drupal CMS via REST API

🧪

Test

Wrote Jest unit tests for core generation logic to validate output accuracy

🚀

Ship

Delivered and integrated into the live WECCC platform within the project timeline

Development process documentation
The solution

One click from JSON
to analyst-ready CSV

Feature 01

JSON parsing and numerical mapping

Survey responses were stored as string values in JSON. Per client specification, every value needed converting to a numerical equivalent for statistical analysis. I built a mapping layer that handled this conversion consistently across all survey types.

Data transformation · client spec
JavaScript functions for CSV generation

Feature 02

One-click CSV download

The interface was intentionally simple. One button triggered the full parse, convert, and download flow. The file came out with the correct column structure for the evaluation report template, ready to open in Excel or Google Sheets without any reformatting.

UX simplicity · zero friction
CSV output code
Outcomes

The crux of the
programme evaluation report.

2.5 Weeks from brief to shipped
1 Click to generate and download
64 Metrics per survey converted to numerical values
Manual hours saved per reporting cycle

Funding-critical tool

The CSV generator became the foundation of WECCC's programme evaluation report.

This wasn't a nice-to-have feature. It was what made WECCC's data usable for external reporting. The programme evaluation report produced from these exports was the primary document submitted to secure funding for communities implementing the Share My Journey system in future years. Without clean, reliable data export, that report couldn't be produced. The tool I built made it possible.

What I took away

What this project taught me.

01

Small tools can have outsized impact

A browser-based utility with a single button became mission-critical infrastructure. The scope was small but the stakes were high, and understanding that distinction shaped how I approached quality and testing.

02

Spec clarity saves everything

The numerical mapping rules were specific and non-negotiable. Taking time upfront to fully understand and document the conversion logic before writing a line of code prevented a lot of rework later.

03

Test what matters

Writing Jest tests for the generation logic wasn't just process for the sake of it. The output needed to be accurate for real analysis, and going through the test cases made me catch edge cases I'd have otherwise missed.

Next case study

WECCC — Share My Journey
Full Platform

The full story of digitising care for isolated seniors across Ontario, from UX research to production deployment.

View case study →