Inspiration
Network infrastructure is something a lot of us take for granted, but in disasters or highly chaotic situations, it can fail, leaving people with no way to communicate. Hurricanes, riots, or even just extra crowded football games can make communication impossible. And in our highly connected world, it's increasingly more of a problem when we CANT connect to each other. We wanted to make something that would let people communicate with or without any sort of infrastructure.
What it does
Allows people to send messages over a mesh net of wifi-direct. It uses message passing functions to ensure that even if a target is out of your range, you can chain to other people and have them send the message where you cant. It also uses encryption based on chat room names so messages are completely secure in transit.
How we built it
We used Xcode and Swift to make it. The encryption was done with RNCryptor, a cross language AES encryption library. The UI was done using SwiftUI.
Challenges we ran into
Sending data with encryption was difficult. We also had troubles changing our UI to use SwiftUI.
Accomplishments that we're proud of
Every message is encrypted. Messages can be sent even if the target is not directly in range using message passing. The UI is pretty and actually looks like a messaging app.
What we learned
We learned the new version of Swift and SwiftUI. We also learned a lot about networking and wifi-direct. We also figured out a lot of stuff about encryption.
What's next for SafetyNet
We would like to improve the UI a little bit. We also want notifications and the ability to receive messages when offline. We would also like to add in the ability to connect to infrastructure if it is available. This would potentially let people connect to the internet even if they cannot directly connect.


Log in or sign up for Devpost to join the conversation.