Our online version has all the standard features of a good forum and we now need a mobile version (NativeScript only) of it, looking much like Tapatalk but with no back-end APIs done yet. I will provide a simple framework (i.e. a sample app with code) that you can extend by adding the XML, CSS and JS for all the screens in the final delivery.
The app should support the following functions (UI only):
1 A Home page that shows the most recent posts and stuff that's trending
2 Forum-related functions - a list of Forums drilling down to Topics, drilling down to actual messages. The messages must show up on two "modes" - the standard threaded model that forums normally use AND a "WhatsApp-style" mode that looks like WhatsApp messages.
3 A list of private messages, with the ability to send and receive private messages.
4 A list of Notifications, with swipe to delete.
5 A Profile where the user can upload his/her profile image, track his/her own posts, settings, tell-a-friend (by taking the friend's first name, last name and email ID), sign out.
6 A search-box on top.
We only need the NativeScript app, with dummy items on the pages that we can remove as we develop the APIs. The dummy items must be marked with a comment and separated in the XML, so they can be removed easily.
The JS only needs to handle navigation, with comments where the APIs would go.
The JS must be the return-then model of request-handling - this will be shown in the sample app that I'll give you.
The user interface must be pleasing an effective and can be an enhancement of what we see with Tapatalk and apps of that quality. It must be swipe where applicable (switching between tabs, deleting notifications, etc.).
The Post and Message UI must include some degree of formatting capabilities - bullets, numbered bullets, bold, underscore, strikethrough. These capabilities must be optional and not the default.
The sample app uses a few plugins that must be used as designed - snackbar, checkbox, etc. - for later compatibility with iOS.
The file-structure of the delivered app must be an extension of the sample app - separate directories for each page, etc.