💡Inspiration
- Our app is designed to promote travel and safety in the world.
- Since Street Smarts runs on a peer-to-peer connectivity, users are required to venture into the neighborhood and the world to cross paths with other users.
- Street Smarts encourages safety by uploading hotspots of the collected location data to show which places have the most activity. This can prevent locals and newcomers from entering unsafe areas at a bad time and guide them to the best places around instead.
- Plus, imagine how fun an airport or a conference would be if everyone had Street Smarts!
❓What it does
- Street Smarts is an iOS app that is designed to use location data from a variety of users across the world to build a decentralized collection of data that calculates where the most popular local or global places are among the location information and creates a hotspot.
- Here’s the catch: users are required to collect their own data! Whether this is by going out to public places with large crowds or by randomly meeting another user, peer-to-peer transfers happen automatically.
- Users have the option to opt-out of location sharing without losing access to other content!
- Safety features:
- Users are anonymous because no account is required
- Data preprocessing stage eliminates outliers like private property
- Never shares live location with anyone
🔨How we built it
Frontend:
- SwiftUI on Xcode to develop its seamless design with high usability.
- Struct is the structure of each page
- Within struct, there is a body view that controls what is appearing.
- Zstacks, Vstacks, Hstacks, NavigationViews, NavigationLinks
- MapKit framework
- DeviceLocationService to (optionally) gather user location data
Backend:
- Kmeans Clustering Algorithm to determine hotspots based on given latitude and longitude coordinates. Developed in Python using ML libraries.
- Preprocessing of data using IQR to eliminate outliers.
- Data engineered the sample locations to test the algorithm and provide examples.
Hardware: (The hardware emulates iPhone peer-to-peer connection due to restraints) 1. ESP32 2. SAM-M8Q
- Mesh network architecture between potential clients
- Serverless => Receives GPS Data
- Only requires users to publish data
- Exponential propagation data from singular node in mesh can be propagate across mesh for differing access points
- Hardware proof of concept
- Mesh network architecture to be recreated with external app users (hardware could be duplicated infinitely)
❗Challenges we ran into
- Constraint on iOS peer-to-peer connection
- Resolved by emulating GPS and data transfer using hardware
- Lack of Swift knowledge
- Only one MacBook with Xcode
✅Accomplishments that we're proud of
- We are proud to make this app come to life in a short period of time despite several constraints. It took each sleep deprived member to make this happen.
📖What we learned
- We learned and experienced both the software and hardware life cycles in a short period of time. We also learned how a simplified Agile methodology concept could benefit our project even in a matter of days. Now, each member understands how much a good plan improves a project.
➡️What's next for Street Smarts
- Next, we plan to provide consistent updates to Street Smarts.
- We will fine tune the peer-to-peer connection and algorithm, then use our extra time after the hackathon to develop the app on a bigger scale for all communities utilize!
Log in or sign up for Devpost to join the conversation.