Challenge Overview
The client of this application is Sharous, a company that is in progress of starting a mobile-based, location-centric social networking application, also called Sharous. The objective of this project is to build a proof-of-concept and to enrich the idea that they have for Sharous.
Sharous will initially be offered as a mobile application for iOS devices, where users will be able to share their location from their phone in close to real-time, view a world map showing the location of their friends, people around them, and other users, and interact with other users in the map or on their contact list.
The application will also provide standard social networking features such as requesting to add friends, accepting or rejecting friend requests, removing friends, viewing contact (friends) list, posting status message, changing profile and avatar and chat messages.
Given to the real-time nature of the location data in the application, it will greatly help user to find and keep in touch with his/her friends. Users will also be aware of other users in the surrounding, and will be able to chat with them or see their profile, or arrange to meet them offline. This will give them opportunity to meet new people.
Note that the full functionality as described above will be accessible to registered users only (login will be required). Non-registered users will be able to access the application, however only limited version of the world map will be provided, where people are marked as small marker with a basic avatar (and a name displaying when clicking on it) but no further options or a profile, and the user will not be able to post anything. This can be used as a showcase of the application and to encourage the user to register.
The "Just take me in" option for the public world map is intended to give people the opportunity to explore Sharous without even have to sign up. It is essentially the same map they would see, if a signed in user had NO contacts at all. Of course functions like chat/send contacts requests etc are not available and his own location isn't published.
In addition, the system will provide functionality for administrator to manage problematic users (including deleting or blocking users) and see statistics related to the server.
This project aims to create a proof of concept that, once ready and approved, will be converted to a production ready application to be listed in Apple App Store. In the future, the client also intends to expand the application to other platform, including Android and Windows Phone
One of the challenges in this project is that there are a lot of existing social networks, including some location-based social networks that are available for mobile phone like Foursquare. The application will offer benefits that are not offered in existing networks, such as near real time nature of location update, the map-centric interface in the application.
The module architecture covers the detail of REST client services and utility service.
See detail requirements in wiki
Final Submission Guidelines
See detail requirements in wiki