The idea for this app came when me and my partner were talking to a friend. We all needed help with a question and it occurred to us that it would be great to know that any of these strangers around us were proficient in mathematics. A great mathematician could be sitting 10 feet away from us and we wouldn't even know it. And that's how Ciao was born! We designed it to be a tool that would allow us to broadcast our interests and needs, and let us see those of the people around us.

What it does

Ciao is an app that uses your geo-location data to allow you to interact with people around you (up to 200 ft). It allows users to log in using Facebook and get their profile. Then Ciao smartly suggests some of the things the user is interested in based on the data collected from their Facebook profile. The user is then able to add more interests as they see fit. Once its setup, you are taken to a screen that shows the interests and needs of the people around you. Using these, you are able to see who that person is and thus, you are able to communicate with them. Ciao was built with a concern in mind. Ciao doesn't want to be the app that you spend your entire day staring it. It wants to enhance the quality of your life, rather than make your life around it. Therefore Ciao lets you locate these people and aims to serve as a medium to meet new people outside of that little phone window.

Our app hopes to bring people together in real life, bringing a real social impact on society.

Our app has three sections: a profile, a broadcast toggle and a nearby list. In the profile you can keep topics that you are knowledgeable about or have a passion for. In the broadcasting section you can choose when you are visible. Finally, in the search section you can see those broadcasting around you.

How I built it

Ciao was built using Ionic framework, which allows you to port your code to iOS, Android, Windows, and Blackberry etc. Therefore, Ciao is ready to work on all those operating systems. It was written primarily in Angular.js, JavaScript, HTML5, and CSS. We obtain user profile from Facebook and are using Firebase as our back end database. When, the user broadcasts their location using the app, their location data is compared against other active users using Firebase. If two users are in closeby proximity, there interests become visible to each other and that's how they can learn about each other and say 'Ciao'.

Me and Arjun, both tackled different aspects of it, helping each other when they were stuck. My contribution to Ciao consists of the majority of design and the UI of the application. I also tackled some aspects of the back-end like incorporating Facebook's API into our app design. We ran into several issues porting the app to an android device. I worked on the majority of that as well.

Challenges I ran into

The first challenge we ran into was running the Ionic app on an android device or emulator. We were unaware of permissions that were needed to run it smoothly. So that took some time trying to figure out.

The second issue was neither of us were familiar Angular.js. To solve this, we read up documentation and tutorials that were available online.

The implementation of Facebook withing the app was another issue. Due to our usage of Angular.js, there wasn't much documentation available online on how we could achieve this.

The final issue was using Firebase as our backend and having it be able to communicate with the app. Thankfully, Firebase representatives were at the event and they were a big help to us.

Accomplishments that I'm proud of

I'm very proud of Ciao. Integration with Facebook and Firebase took up a lot of our time, with us tackling bugs and errors, one after the other. We were also able to design it with Material design, which I believe is a big accomplishment.

What I learned

I became proficient in Angular.js for the purpose of using Ionic for our app. I also learnt a lot about Facebook and Firebase's API. This is the first Android app I have designed and therefore, I learnt how to implement Google's Material Design in an Android app.

What's next for Ciao!

Ciao will continue to grow beyond Hack the North. Multiple new features will be incorporated in the coming weeks. We plan on introducing a distance limiter to locate users within a certain radius. We also plan on modifying some of the design elements of the app and publishing it on the Google Playstore and the Appstore.

Share this project: