CityFix

hackathon team project

CityFix — Civic Engagement

A civic issue-reporting app, 3rd Prize at GNEC 2024; I built the backend and schema.

role
backend developer
status
hackathon
scale
3rd Prize · GNEC 2024
stack
Express · Prisma · MongoDB
type
team project · open source

FIG.01 // CITYFIX · REPORT LIFECYCLE

A report is the start, not the end

A report opens a conversation with several possible participants. Proposals do not resolve anything on their own; the person who raised the issue decides.

A report is the start, not the end01 · REPORTgeo point + photoauthority toggle at report time02 · MAPradius queryMongoDB geospatial index03 · PROPOSALSauthority / communitymore than one per report04 · REPORTER DECIDESaccept / declineSINGLE DECISION OWNER05 · FUNDINGcommunity projecttarget + visible timeline06 · CLOSEDresolvedthe final say stays with whoever is affected,not with whoever replied firstif it needsfunding

CityFix was a team build for the GNEC International Hackathon, aligned with UN SDG 11, and took 3rd Prize in 2024. My part was the backend: the Express and Prisma REST API and the database schema underneath it; the React Native client was not mine. A report is a location with photo evidence, surfaced on a shared map by radius search, which MongoDB answers natively with geospatial indexing. Both an authority and the community can propose a fix against a report, only the reporter accepts or declines, and work that needs money becomes a community project with a funding target and a visible timeline.

screens