A developer is required to port an Android application to iOS. There is a supporting technical specification document that outlines the key features of the core components. The app is already available on the Google Play Store ([url removed, login to view]).
You must be able to implement the following features:
- The app utilizes voice recognition input (single keyword). The Android version uses CMU Sphinx (pocketsphinx) for voice recognition. There is an iOS implementation of this library under the name OpenEars. While OpenEars is prefereable it is not a strict requirement; the only requirements are that the keyword can be detected, operate offline, and require no additional setup by the user.
- Another feature uses swipable cards (tinder-style). A swiped card must be able to return to the screen with visual changes and automatically swipe away after a timeout.
- The app stores its data in sqlite and uses raw SQL queries (no ORM). An initial, pre-populated database is meant to be shipped with the app.
- The app provides log-in and syncing capabilies with the website. It downloads data by interacting with a JSON API (documentation is available).
The source code to the Android app will be available to aid in re-implementation.