Parents always want their children to have fun at the park, but they also want peace of mind that they will be safe. Incidents happen when parents are not alert, and we wanted to find a solution for that.

What it does

Parents designate an activity zone that their child is allowed to be in. They connect the child's device and receive an instant pin on the map indicating their child’s location. When the child goes off the map, both the child and parent device are alerted with a loud audible sound as well as a red screen.

How I built it

We built this app using native Objective-C for iOS. We use the ESRI iOS sdk as well as Magnet. ESRI maintains the polygon for the geofence, and child-parent communication between the devices is handled via a Magnet chat room. The child device sends GPS coordinates to the parent, which the parent device checks against the established geofence (Activity Zone).

Challenges I ran into

We are not iOS developers, so a completely native app was scary. There were some technical challenges in getting geographic coordinates mapped correctly as well as using Magnet's messaging in a creative way to fit our needs. One we got those challenges straightened out, our only problem was lack of familiarity!

Accomplishments that I'm proud of

We’re proud that this native iOS app actually works, looks good, and has a simple user experience. We focused on ease-of-use so that parents can spend less time fiddling with devices and more time being confident that their kids are safe.

What I learned

With ESRI, we learned about their awesome API for native objective-C apps and the difference between two types of geographic coordinate systems. With Magnet, we learned about their inter-communication library. We also grew our skills on objective-C and iOS development.

What's next for Happy Parent Club

Next, we want to create a smaller device for the child to carry in order to lower the cost of entry to this product. There is also the possibility of tracking multiple children simultaneously.

Share this project: