Spring 2023

Youth Mental Health Clinic Finder


Vancouver Coastal Health began integrating a third-party, digital intake solution for Child & Youth Mental Health (CYMHSU) clinics. Because the platform did not offer the ability to triage new patients based on location, my team was brought in to connect new patients with the new intake flow. Using the Mapbox API and Vue.js, I created an interactive triaging tool that connects patients with a mental health clinic within their respective catchment area.


As a part of Vancouver Coastal Health’s Child & Youth Mental Health & Substance Use strategy, the decision was made to offer digital intake for new patients. Digital patient intake forms allow for the rapid collection and processing of medical history data. It allows the clinic to efficiently gather essential details about the patient, streamlining the intake process and improving data accuracy.


I was tasked with the development and implementation of a geolocation-based triage tool that efficiently directed new patients to the appropriate clinic’s intake form. By leveraging the power of Vue.js, TypeScript, and the Mapbox API, I created an interactive solution that streamlined the triage process and improved patient access to healthcare services.


Each catchment area was presented to us as a list of complicated rules. This list was very much designed for a human to triage patients over the phone rather than something that could be used programmatically by an algorithm. To solve this, I converted the catchment area rules to a set of coordinate polygons that would represent the boundaries of each catchment area. With this set of polygons, I then transform the user’s address to coordinates using the Mapbox Geocoding API and determine which catchment area it falls into using a small library which does a great job of implementing this point-in-polygon algorithm.

design + implementation