You are on page 1of 4

Angular 5+ Engineer Assignment

Description

The goal is the development of an Angular web application that would implement a
Posts Management​ functionality. Your web application should consist of at least 2
different views​ as described below.

A Post List view lists all the posts and some of their attributes. Its main
components are:

● The actual ​post list​


● Latest comments​

There are also:

● Header / Footer
● Add User​ button
A Post view presents the details of a specific post, its author and all post comments. Its main
components are:

● The post attributes​


● A ​list of comments​ related to the post
● User info box
● Latest comments​ - same as the first view

There are also:

● Header / Footer
● Edit User​ / ​ Remove User​ buttons
Post view​ also doubles as an edit form when the end-user clicks the Edit post
button.

In edit mode, it allows the end-user to edit post attributes.

Latest comments component represents all the recent added comments.

API
API url: ​https://jsonplaceholder.typicode.com

Posts
https://jsonplaceholder.typicode.com/posts

Comments
https://jsonplaceholder.typicode.com/comments
Users
https://jsonplaceholder.typicode.com/users

Angular principles which should be followed:

● Smart/Dumb components
● Separate app into modules ( ​optional​ )
● Using services for API calls
● Use scss ( ​optional​ )
● Push code on github
● Deploy app on firebase, surge, etc ( ​optional​ )

Technical Instructions
Application must be built with listed technologies:

● angular-cli
● Bootstrap
● NgRx ( Redux library ) ( ​optional​ )
● Write intro README.md in the root of project explaining how to install & develop
application

The wireframes ​ above should be considered as indicatives for the final view and the
functionality needed from your solution. You are free to decide for the actual design and the ​
code structure​ of the views but keep in mind the ​ wireframes​ and the functionality described
there. Additionally, try to split the views in multiple Components​ in order to keep your code-base
modular and reusable.

Good luck!

You might also like