I would like to develop a mobile application (for both iOS and Android).
The purpose of this application is to help people posting their problems and/or responding with suggestions and advices to other people's problems.
The application is very simple:
1- In order to use the following, the user must login with his Google account or his registered username. In all cases, the application must the email, mobile, age, gender, and country must be captured for all users. Personal photo is optional (replaces a default avatar next to the name when posting a problem or responding).
2- The user can post a problem with a title. Title must have minimum of three words while the problem description cannot be less than twenty five (25) words. The maximum allowed for a title is eight words and there is no limit for the description. The application should validate that both title and body is written using English language (80% validation accuracy is okay).
3- Other users can respond with advices, suggestions, and recommendations to the problem. The response cannot be less than twenty (20) words. Again, the app must validate that the majority of the words are in English.
4- For both unqualified problems and responses, the application should display a pop-up with an informative message telling exactly what went wrong.
5- Users (any user and not just the thread owner) can put thumbs up or down for the responses (not the problem but the responses) to indicate if they were helpful or not (people cannot do that for their own responses). People can also choose to report inappropriate problems or responses with an optional reporting description.
6- People who post a problem will get one point, people who post a solution will get 10 points, people who get a thumbs up (for each thumbs up from another user) will get 50 points. The points will be shown near to the usernames in their posts, while numbers of thumbs up/down will be shown near the icons of thumbs up/down of each post (exactly like YouTube for example).
7- Any user who posts a problem will get an acknowledgement from the application and through email. Any user who posts a response or receives a thumbs up will recieve a thank you message from the application and through email.
8- Users can response to a response too (reply to a specific response).
9- Users get a push notification, email, and an update inside the app (similar to the bill icon functionality in LinkedIn and many other social media apps) if he/she gets a response to his/her problem or a specific reply to his/her response.
10- Other users can view the profiles' info of others and send direct messages. Direct messages will appear in push notifications, notification emails, and in the bill icon functionality. People will have the choice to block annoying users and/or report them.
11- The users list is public and ranked by earned points.
12- By default, problem threads are ordered from least to most responses. An option of ordering the responses from newest to oldest, oldest to newest, most to least popular (based on number of responses) should also be available.
12- Users can modify their posts for unlimited number of times.
13- The application must have an admin panel which does the following functionalities:
A- reports showing users points (with activities breakdown), reported items (with options to delete items and delete users).
B- Ability to delete users, and grant admin access to other users. The super admin is the only one who can delete or demote admin accounts and track other admins activities.
The above is all what the application should do. However, this project includes the following milestones:
1- design the application which includes all the above features.
2- develop the application.
3- integrate and link the application with my accounts in two montizing platforms (no banner ads. Only pop-ups).
4- Integrate the application with Google analytics.
5- deploy the app in both my Google play and Apple developer accounts, includes description and screenshots preparation which should be approved by myself beforehand.
1- The application logo and name will be provided upon hiring the candidate.
2- Development technology is left to the developer, but must inform me and justify why is it better than other available technologies.
Thank you and best regards,