Challenge Overview

Project Overview:

Welcome to the Mnemosyne - iPhone HTML5 Mobile UI Prototype! The goal of this challenge is to create a HTML5 Prototype application for iPhone based on provided storyboards.

As part of this challenge you will need to document all HTML5/CSS3/JavaScript code. We need clear explanation of the code to help us figure all the HTML5/CSS3/JavaScript code functions and make it easier for future developers and the client to understand what you have built.

NOTE: This application will use AngularJS Framework (http://angularjs.org, http://docs.angularjs.org/guide) and Bootstrap 3 (http://getbootstrap.com/getting-started). Please follow coding standards and write clean code for AngularJS data binding instead of using plain HTML code.

IMPORTANT: As per the project schedules the review timelines are very close. Reviewers please note the review timelines for further reference. Please request us if you need additional time for review in case we get more number of submissions.

Tips for Success: Asking questions early and getting Copilot or PM's feedback is very important for the success of this challenge. 

Competition Task Overview:

The main task of this competition is to develop a Responsive HTML5 prototype based on the provided storyboard designs. Your prototype must work properly in latest safari browser in iPhone 4s, iPhone 5 and iPhone 5s.

Mediafly Interactives: This application will be packaged and deployed on mediafly interactives. Please follow the development guideline of Mediafly Interactives on this prototype implementation.

Base Code

Previously, we have implemented the UI for iPad, this is going to support iPhone, please use the same data binding as iPad, so both can be properly updated.

Required Pages:

Below are the required pages in Portrait orientation only. This prototype should support retina display. We would prefer to use single page app using AngularJS templates.

1. Splash Screen:

  • User opens the application and will see the dashboard page (01_Splash Screen.png).
  • It will load the initial data from server needed for Dashboard.

2. Dashboard:

  • The main screen for data displaying (02-1_Dashboard.png)
  • Click on the menu icon, it will expand the menu side panel (02-2_Dashboard Menu.png, 02-3_Dashboard Menu.png)

3. To Read Screen:

  • Click the To Read in the menu panel (03-1_To Read.png), will show the To Read Screen (03-2_To Read.png).

4. Interests Screen:

  • Click the Interests Page in the menu panel (03-3_Interest Page.png), will show the Interests Screen (03-4_Interest Page.png).

5. Search Screen

  • Click the Search in the menu panel (03-5_Search.png), will show the Search Screen (03-6_Search.png).
  • Enter Text in Search box (03-7_Search.png), will update the matched search content.

6. Category Screen

  •  Click any Category section in Dashboard (04-1_Category.png), will navigate to Category Screen (04-2_Category page 1.png)

7. Item Detail:

  • Click any item in Category Screen (05-1_Item Details.png), Item Detail screen will be displayed (05-2_Item Details.png)
  • User can comment on it (05-3_Item Details_Comment.png, 05-4_Item Details_Comment.png).

8. Social Share:

  • Click the social icon at any Item Detail Screen (06-1_Social Share.png), a social share popup will be displayed. (06-2_Social Share.png, 06-3_Social Login.png, 06-4_Social Login.png)

Specific HTML/CSS/JavaScript Requirements:

  • HTML/CSS Requirements:
  • Your HTML code must be valid HTML5 and follow best practices
  • Validate your code - reviewers may accept minor validation errors, but please comment your reason for any validation errors. Use the validators listed in the scorecard.
  • Use CSS to space out objects, not clear/transparent images (GIFs or PNGs) and use proper structural CSS to lay out your page. Only use table tags for tables of data/information and not for page layout.
  • No inline CSS styles - all styles must be placed in an external style-sheet.
  • Use semantically correct tags - use H tags for headers, etc. Use strong and em tags instead of bold and italic tags.
  • Element and Attribute names should be in lowercase and use a "-" or camel naming to separate multiple-word classes (i.e. "main-content", or "mainContent")
  • Label all CSS, JavaScript, or HTML hacks with explanations so others will understand.
  • Your code must render properly in all browsers listed in the scorecard in both Mac and PC environments.

Font Requirements:

Use font - Arial.

JavaScript Requirements:

All JavaScript must not have a copyright by a third party. You are encouraged to use your own scripts, or scripts that are free, publicly available and do not have copyright statements or author recognition requirements anywhere in the code. We would like to use following JavaScript libraries:

Browsers Requirements:

  • Safari Browsers on iPhone 4S, iPhone 5 and iPhone 5S (iOS 5+)

Documentation Provided:

Storyboard screens and PSD files: Post in Forum



Final Submission Guidelines

Submission Deliverables:

Final Submission:

ELIGIBLE EVENTS:

2014 TopCoder(R) Open

REVIEW STYLE:

Final Review:

Community Review Board

Approval:

User Sign-Off

SHARE:

ID: 30042111