Challenge Overview

Project Overview:

Welcome to the Diageo Direct Program Pages Responsive HTML5 Prototype Challenge! The goal of this challenge is to create a Responsive HTML5 Prototype application based on provided storyboards using AngularJS framework and Bootstrap. The existing prototype assets can be used in this new prototype implementations.

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.

IMPORTART: 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 and wireframe functionality. You need to follow existing prototype responsiveness, animations, layout design and assets to make reuse on this new prototype. Your prototype must work properly in all the required browsers.

Required Pages:

Below are the required pages for this prototype challenge, please refer provided wireframe and storyboard designs - (here Cart pages are out of scope). The pages should be responsive to show correctly on both desktop and mobile browsers.

1. Order Window Page:

  • Show product items with images (thumbnails) - image urls can be read from the JSON data. Products can have multiple images.
  • Ability to see all items for a particular program.
  • Ability to add an item to cart.
  • Ability to add multiple items to cart.
  • Ability to sort by Programs, Price lowest to highest; higest to lowest.
  • Ability to sort items based on named (A to Z and Z to A).
  • Ability to see paginations on program/products.
  • Ability to see more or less items (Show All / Show Less).
  • Print Catalog to PDF - show default print dialog.
  • Ability to view Budget / Estimated Spend / Remaining Balance.
  • Ability to review cart.
  • Ability to search for a string in the available Item collection (clear filters) - show Search Results page.
  • Ability to sort items based on relevancy (highest to lowest).
  • The default list should show "Featured" items first - customize page to show pre-defined number of items.
  • Filter based on Brands, Programs, Categories, Prices.
  • Reset Filters, Submit filters.

2. Program/Products:

  • Show expand/collapse features for the program header - on collapse show program name, but on expand show the text description as shown on wireframe for now.
  • Product Items shown are filtered for a selected program.
  • Default Sorting should be by Featured, then Alpha Sort.

3. Item Detail Page:

  • There will be three different type of item views like Standard Item, Kit Item, Roll Up Item views.
  • Standard item view is simple one having all possible photo at bottom of main item - refrence screen is "03-POS-Order-standard-item".
  • Kit item view has all kit items at buttom - reference screen is "04-POS-Order-sample-kit".
  • Roll up item view has options to choose different sizes - reference screen is "05-POS-Order-roll-up-item".
  • Ability to view all items in a kit, personalized items.
  • Ability to view item image, description and price.

4. Address Book:

  • Ability to view Global & Favorite Addresses.
  • Ability to add Addresses.
  • Ability to filter by specific Accounts in the hierarchy.
  • Ability to tag/untag Favorite Addresses.

Specific HTML/CSS/JavaScript Requirements:

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.

  • 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:

Refer existing prototype for the font family.

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:

  • IE 9+ Browsers on PC - (should be functional on IE 8 version)
  • Google Chrome 27+ Browser on MAC and PC
  • Latest Safari Browser on MAC and PC
  • Latest Firefox Browser on MAC and PC
  • Latest iPad, iPhone Mobile Browsers on current iOS

Documentation Provided:

Attached documents: Storyboard.zip, Wireframe.zip, Existing Prototype.zip



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: 30042998