Projects
What I've built
AccessLens is a community-driven platform that helps people with disabilities navigate cities using crowdsourced accessibility data, interactive maps, and community reviews. Each place receives a calculated accessibility score across 10 criteria, visualized with colour-coded markers on an OpenStreetMap-powered map. Launched production-ready with 50+ verified places in Victoria, BC.
Frontend
Backend
Infrastructure
Core Features
Accessibility Scoring & Mapping
Each place receives a calculated score (0–100) across 10 criteria. Colour-coded map markers (green/yellow/red) rendered via Leaflet and OpenStreetMap — no paid API key required.
Community Reviews & Reporting
Reviewers submit accessibility reports and ratings. Business accounts manage their own places. Structured issue reporting with moderation pipeline.
Multi-Provider Authentication
Auth.js with Google OAuth, email magic link, and credential sign-in. BCrypt password hashing, JWT session management, and route-level middleware protection.
Geospatial Data Architecture
MongoDB 2dsphere index for proximity queries. 10 collections including geocode cache with TTL, GeoJSON location model, and compound indexes for filter performance.
City-Scale Seeded Data
50+ real verified places in Victoria, BC across 12 categories — restaurants, government, parks, transit, hospitals, and more — production-ready at launch.
WCAG 2.1 AA Compliance
Built in alignment with the Accessible Canada Act and BC Accessibility Act. Semantic HTML, ARIA labels, keyboard navigation, and screen reader compatibility throughout.
Community Hive is a multi-tenant SaaS platform designed to centralize communication between property managers, strata councils, HOA boards, and residents. The system replaces fragmented tools (email chains, paper notices, social media groups) with a secure, structured, and scalable communication architecture. It supports multiple buildings, unit hierarchies, and role-based dashboards, enabling controlled document access, structured issue tracking, automated announcements, and AI-enhanced communication workflows.
Architecture Overview
Multi-tenant SaaS — single codebase, tenant-isolated data model
Each entity is scoped with strict tenant isolation to ensure secure data separation across communities.
Frontend
Backend
Infrastructure
Core Features
Role-Based Dashboards
Dynamic dashboards for Property Managers, Council Presidents, Council Members, and Residents. Each role sees scoped data and authorized actions only.
Communication Engine
Centralized announcements, scheduled messaging, multi-channel notifications, AI-assisted tone polishing & summary generation, and automated weekly Building Brief digests.
Maintenance & Ticketing
Residents submit maintenance requests, ARC requests, violations reports, and service tickets. Auto-categorized, status-tracked, and logged with full audit history.
Document & Governance
Secure storage for governing documents and meeting minutes. Controlled access permissions, audit trails, and exportable data on contract termination.
Engagement & Analytics
Resident polls & surveys, quorum support tools, message open-rate analytics, engagement tracking dashboard, and automated recognition messaging.
Security & Compliance
Tenant-scoped database queries, role-based permission middleware, document access restriction, Canadian privacy compliance alignment, and audit log framework.