Challenge Overview

  • Create a simple Angular application from the provided storyboard

Submission, Review and Appeals phase for this challenge is shorter than usual. Please make note of the timelines.

Project background

  • Our client is looking forward to convert an application built in JSF to Angular in phases. To demonstrate the capability, we are building an angular application from scratch based on the provided storyboard which is created from the screenshots of existing application

Technology stack

Challenge Assets

Individual requirements

  • Every screen in Marvel app https://marvelapp.com/cb3e847 is in scope

  • Labels in the left pane, headers and tabs are hardcoded

  • Every other data should come from API

Payment type Search and List Screen:

Payment type View Screen:

Payment type Create / Update Screen:

Validation errors or API errors:

Unit tests:

  • We need sample unit tests for all components, services and directives in scope. It can be just one test case per component too

  • Code coverage is not a problem here

General requirements

Layout

  • The UI should support resolution 1366x768 and above

  • The application layout should match the storyboard as much as possible

  • Please make use of reusable components as much as you can

  • SVG icons are preferred over PNG or JPEG images

Angular specific

  • Please follow angular style guide while creating components, writing tests, etc..

  • Please pay attention to angular security guide and follow the principles strictly.

  • Ensure that npm run build --prod doesn’t throw any error and build is successful.

HTML Specific

  • HTML should be valid HTML5 compliant.

  • All HTML code naming should not have any conflicts or errors.

  • Please use clean INDENTATION for all HTML code so future developers can follow the code.

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

  • Use semantically correct tags- use H tags for headers, etc. Use strong and em tags instead of bold and italic tags.

  • No inline CSS styles- all styles must be placed in an external stylesheet.

CSS Specific

  • Provide comments on the CSS code. We need CSS comments to give a clear explanation of the code usage. The goal is to help future developers understand the code.

  • Please use clean INDENTATION for all CSS so developers can follow the code.

  • All CSS naming should not have any conflicts.

  • Use CSS3 Media Queries to load different styles for each page. Do not build a different page for different device/layout.

  • You may use SCSS in the project.

Javascript Specific

  • All JavaScript used must not have any copyrights to any 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.

  • It is fine to use GPL / MIT / Open Source code. 

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

Code formatting

  • Make sure the code is well documented, all classes, methods, variables, parameters, return values must be documented in every single code file, and appropriate inline comments should be provided too where the code is not straightforward to understand.

  • Use appropriate linter to lint your code and ensure that there are no lint errors

Platform

  • Desktop: Chrome latest, Firefox latest

  • Chrome is the main browser



Final Submission Guidelines

  • Zip your codebase and submit the zip file using the submit link in the challenge.

  • After submitting, please ensure that you are able to download your submission from Online Review

Review style

Final Review

Community Review Board

Approval

User Sign-Off

ID: 30099868