Skip to main content
AccessMap's map view with a barrier pinned to a downtown Kelowna corner, three nearby flags, and a Report button

SEVERITY 4 · VERIFIED

No ramp at the corner — wheelchair users have to detour.

DOWNTOWN KELOWNA, BRITISH COLUMBIA

Featured

Solo builder

Sky Halisky

AccessMap

Mobile app for flagging accessibility barriers — broken ramps, missing tactile paths — pinned to a real city map. Privacy-first: no tracking, no data sold.

Role
Solo builder
Year
2026

Tech

  • Expo
  • React Native
  • Supabase
  • TypeScript

Tags

  • accessibility
  • mobile
  • privacy

The problem

I’ve always been passionate about accessibility — it stems from work I did with the vision loss community. When people who depend on accessible routes hit a broken ramp or missing curb cut, reporting it meant navigating bureaucratic city forms: describe the problem, wait, never hear back. There was no community loop: no way to signal “this is still broken” or confirm “someone fixed it.” The gap was real: a faster, community-owned reporting channel that kept people’s data private.

The approach

I chose React Native and Expo to force myself to learn cross-platform development while shipping something real. Supabase handled auth and the database so I could focus on the domain problem instead of infrastructure. The pivotal call was implementing Postgres Row Level Security (opens in new tab) from day one — users can only see and edit their own reports. That wasn’t an afterthought; it shaped every feature that followed.

The hardest part wasn’t the code. My first designs missed what users actually wanted. They didn’t just want to report problems — they wanted to verify them, share workarounds, celebrate fixes together. That insight changed everything.

What shipped

A map-first mobile app (opens in new tab) where accessibility barriers are pinned to real city locations. Users can report, verify, and follow up on flags. Launched with 3 testers; peer verification emerged organically within weeks — people confirming problems they’d encountered independently, not just filing tickets.

Reflection

I’ve always been extremely passionate about accessibility, stemming from work I did with the vision loss community.

Building this reinforced something I already believed: privacy isn’t a feature you add later — it’s a foundation, especially when the people using your app are sharing vulnerable information about the barriers they face every day.

— Sky Halisky · Okanagan Valley, British Columbia

A Brief Account

TKTK_ACCESSMAP_TEST_COUNT tests passing not yet reconciled — method

Placeholder — not a shipped figure. The homepage chip says 1,680; this repos CI says 1,120; the local suite runs closer to 1,857. One artifact-backed count gets pinned here, with a link to the run that proves it. (Separate from the portfolios own measured 325 on the accessibility page.)

More work

Continue reading.

Have something like this?
Write to me.

Send me an email