Main page with user created protest events
Current implementation of main page with location entry that will bring user to next page
Creating a new protest with scroll down time selection
Global newsfeed that would be accessed by swiping left on the main page.
Specific protest feed that would pop up after touching pinpoint on map
It's been no secret that the last few years of American history have been filled with increasing political and social unrest. Especially with the turbulent aftermath of the 2016 election we are reminded of the importance of staying safe while voicing our opinions. While demonstrations seem to be inextricably entwined with Berkeley culture, the wide range of experiences we hear about from peers is at times disconcerting. One friend's story of an uneventful, yet peaceful march to Oakland and another's tale of an unexpected trek to a highway ending with battered cars and tear gas couldn't be more contrary. Through creating a communication platform geared specifically towards keeping protestors informed, we hope to give students a more immersive yet safe experience when letting their voices be heard.
What it does
A global map launches immediately after app startup, letting users see any ongoing protests, which are indicated by pinpoints on the map. Tapping any of the pinpoints will bring the user to that specific protest's feed, including any status updates, photos, or safety ratings made by participants who have checked in to that protest. Safety ratings for protests are created through a constantly updated database of user input, and shown at the top of each protest's feed as a color bar ranging from red (dangerous) to green (peaceful/tranquil). Users can give feedback on how safe they believe the environment is with the up and down buttons located on the sides of the safety bar, taking into account police activity, rowdiness and volatility of the crowd, and reaction of bystanders.
How we built it
We used swift and xcode to develop our application, Half of our team worked on UI/UX, creating a mock-up of newsfeed pages that we did not have time to incorporate, as well as the design and background of existing pages.
Challenges we ran into
The whole team was new to app development as well as swift, which made the whole process extremely difficult. We spent the majority of our time trying to understanding how to get our view controllers to engage with each other, as well as researching and implementing geocode and map pins that doubled as buttons.
Accomplishments that we're proud of
For most of our team, this project represented not only the accomplishment of our first hackathon, but also our very first iOS app. In a mere 36 hours, we were able to immerse ourselves in the basics of iOS app creation and teach ourselves Swift and Sketch. As first-time hackers, it was an accomplishment alone to create an app. However, one of the especially memorable components of our app Unite was the implementation of the geocode. The interactive map is vital to the purpose of the app. This feature allows users to add a pin with a protest as well as enter details like time, location, and purpose. Furthermore, the map also shows all nearby protests and allows for greater interaction of Unite users. We’re also proud to present our mockups and the basic UI/UX design of the app. Modeled in Invision, these mockups represent what we hope the app can someday become: a social and supportive community for passionate users.
What we learned
As a team, we've all become more versed in swift's syntax, as well as how components in xcode communicate and work with each other. While we weren't able to follow through with linking our app with a server and database, we learned multiple ways to set these up, and in the process familiarized ourselves with the basics of how they worked.
What's next for Unite
Unite addresses a lot of the key components of what we visualized when brainstorming for an app that could allow users to increase awareness and participation in campaigns for important causes. However, there's definitely a lot we can do to improve the usability of United.
We're interested in linking the user-generated markers on the map to individual pages that offer more description about the protests. These pages would go more into detail about the purpose of the protest, the starting point and destination, and further information about ways to get involved in specific movements. A key feature in this page that we'd like to include is a safety scale, with results generated by users attending the protest of interest.
We're also looking towards allowing users to make their own accounts to keep track of protests and to stay connected with other users. In developing this key component using a server, users can also stay connected with local and global campaigns through a newsfeed.