Inspiration

This semester, I started taking more walks outside of campus and noticed many small problem areas around the community, like potholes, broken benches, and overgrown parks. I realized that people often see these issues as just part of the landscape rather than discussing them directly, which leads to generalizing whole areas as neglected. This inspired me to create a platform that isn't just about submitting service requests, but about bringing people together to discuss how these problems affect us and what we can do to solve them. It’s a place for the community to connect, share concerns, and work towards practical improvements.

What it does

CrowdMarks is an IOS App that allows civilian users to "Mark" locations and describe issues they have discovered in there community. Users can supply images, descriptions and titles to there own markers or post on the discussion board of markers created by other users. While CrowdMarks encourages community driven solutions, it also offers a dashboard view for community works employees to navigate marks, gauge public concern, and communicate solutions.

How we built it

CrowdMarks is built in Swift, utilizing UIKit for a responsive iOS interface. It integrates MapKit to display interactive 3D maps with custom annotations, while Firebase Firestore manages cloud data storage, and Firebase Storage handles marker images.

Challenges we ran into

Datasharing was the most difficult task as I have limited experience with databases and have never used firebase or made an online system like this. I learned these technologies within the 36 hours and despite diffculties delivered a backend that handles advanced functionalities such as asynchronous loading and real-time updates

Accomplishments that we're proud of

Crowdmarks can be deployed and used on original hardware and works on all Iphones capable of running IOS 17> regardless of screen size / aspect ratio

Crowdmarks' "Global Map" allows all devices to contribute to and view live updates from a persistant database of user generated marks.

CrowdMarks' asynchronous data loading system enables non-blocking, real-time data fetching from Firebase, ensuring the UI remains fully operational despite timing mismatches in data loading. For instance, if an image fails to load before a marker is inspected, users can still access and interact with all other information related to that marker. The image will seamlessly integrate into the view as soon as it becomes available, providing a smooth and uninterrupted user experience.

What we learned

This project taught me the fundementals of real time data management in a multi-user platform and introduced me to Firebase. It also allowed me to refresh my knowledge of swift and its libraries, and enabled me to practice various design and UX strategies.

What's next for CrowdsMarks

Crowdmarks provides a boiler plate for a platform that is extremely extendable, and only really limited in scope by its firebase plan. My biggest wish for a future feature is a system for moderation of user marks. Its an inevitability that not all people will use the app for its intended purpose and this is an important consideration for a production ready product.

Built With

Share this project:

Updates