Managing your contacts is difficult, especially when you meet someone new. Should you ask for a mobile phone? Email address? Or maybe Skype nickname? Whatever way you choose, you will still find yourself linking that person on more social media afterwards. Why not do it in one go with an easy-to-use app?

What if you have to meet new people for business all the time? Then, your life turns into endless flow of business cards with no real structure and a simple way to organise it! Our app aims to become your electronic business card library and your business card on the go: search both your home and work contacts easily and have your business card with you wherever you go. Avoid the hassle with paper business cards!

How it works

A person downloads an app and goes through a simple sign-up process that allows to add personal and work contacts like Facebook, LinkedIn etc. (only Email Address is implemented right now). Afterwards, the person takes a personal picture to be used for face recognition (in future, the Face Recognition library will be also filled up with profile images from added social networks). Ready to go!

Recognising someone and adding a their contacts is as easy as taking a picture of that person!

Challenges we ran into

Face recognition doesn't really work well - different camera configurations, different lighting or even haircut and glasses screwed up the process. Thus, in the future, we need to add more reliable identification techniques like Fingerprint recognition (when the devices are equipped appropriately) with a fallback to techniques like NFC, Bluetooth or QR Code scanning.

Having a centralised server for all the functionality means that we can roll out updates and have total control over the core of our app. However, it also means that the app can't function offline or if the server goes down. Meanwhile, doing Face recognition on the device is difficult due to all the SDKs out there (some of which are limited to the processor chips, e.g., Snapdragon SDK).

Using Ionic and Cordova for making an app was a really good choice due to rapid view design process, but the framework sometimes behaves unexpectedly on the actual device. Lack of on-device JavaScript debugging makes development quite a horrifying process.

Accomplishments that we're proud of

We were advised to have a look at Parse backend-as-a-service and it worked out really great for us. Our backend server is just a single file with less than 250 lines of code!

Doing a complex app that interacts with a server, uses camera and Face recognition only by means of HTML5, CSS and JavaScript is exciting and is quite an accomplishment on its own. A couple of years ago we never could imagine using thick technology stack in such a way!

What we learned

We had no prior experience in Ionic or Face recognition, so we learnt a great deal. We applied Ionic framework to bootstrap a simple cross-platform app really quickly. We discovered Parse - great alternative to managing your own database. We figured out the ins and outs of Face recognition with current technologies.

What's next for Ice Breaker

Refactoring! And lots of it! App in it's current state is very much a fragile prototype, so we need to improve it's code quality. Changing the app engine from Ionic to something like Xamarin.Forms (more native yet still cross-platform) will improve the performance and may give us a chance to use the some on-device Face recognition techniques.

Adding more contact sources will always remain needed (especially right now, when we only have a single email) - integration with all the social networks like Facebook, Twitter, Google+ (for personal contacts) and LinkedIn (for work contacts) is crucial.

What if you already have a collection of Business Cards? We could use Artificial Intelligence to smartly recognise your collection of paper Business Cards and automatically create an electronic entry with all the details (Name, Email, Age etc.)

Limiting ourselves to Business Cards for people is quite boring! We could use the renowned iBeacon technology to implement Business Cards for Places. Why not add your favourite food place while you're there to keep track of latest updates and deals? :)

Built With

+ 18 more
Share this project: