Activity 3 Web Client
Activity 3 Web Client
Activity 3 Web Client
Course:
Class Activity N. 3
Front-End Web Development
Activity Description
For this activity, you must build two websites using React and any of its
frameworks or libraries. First of all, all user interfaces that were designed for the
first activity must be implemented. If you did not design web user interfaces for
the first unit, now, it is the time to do it. In this activity only one URI developed in
activity 2 must be used/consumed. Second of all, the website must consume
the following public API https://api.plos.org/, that API returns data from scientific
publications in JSON format according to the title parameter. For example, to
retrieve scientific documents about GitHub, the following URI can be used:
https://api.plos.org/search?q=title:github
Topic n° 3
Universidad de las Fuerzas Armadas ESPE
Unidad de Educación a Distancia
Course:
That information tells that there are seven occurrences related to the term
GitHub. The next URI returns the ids of each article:
https://api.plos.org/search?q=title:%22GitHub%22&fl=id&start=1&rows=100
(URI 1)
Topic n° 3
Universidad de las Fuerzas Armadas ESPE
Unidad de Educación a Distancia
Course:
With the id of each article, you can access the web page that shows the
complete information of the article, the URL to display the data is as follows:
https://journals.plos.org/plosone/article?id (URI 2)
10.1371/journal.pone.0205898,
https://journals.plos.org/plosone/article?id=10.1371/journal.pone.0205898,
Topic n° 3
Universidad de las Fuerzas Armadas ESPE
Unidad de Educación a Distancia
Course:
You must implement one or more user interface design patterns, in the design of
two websites. One website contains several web pages consistent in their
design, colors, and content to:
(1) Consume the public API URIs described above (api.plos.org) and
Note. For part (1), pages must be fully functional, for part (2), all pages must be
fully designed and implemented (Front-End using frameworks), and only one
Topic n° 3
Universidad de las Fuerzas Armadas ESPE
Unidad de Educación a Distancia
Course:
page must consume one of the URIs previously coded by your developer team.
The two components of this activity are described in detail below.
You have to implement one web page where the user will enter the search term.
The user must select how they want to view the data. The developer is free to
design the user interface of these five web pages, but you must use a
framework to implement it later. The form (and its results) and the four pages
are dynamically created with the retrieved data as follows:
1. This page shows the tabulated documents (do not include the abstract)
of each of the articles returned by URI 1, the titles of the table columns
are:
a. id,
b. journal,
c. eissn,
d. publication_date,
e. article_type,
f. author_display,
g. title_display,
h. score
2. On the previous page, for each title of the papers, program a link that
displays the abstract for that paper on a new page as read from the URI.
This link will open the other page in a new browser tab or a new browser
window.
Topic n° 3
Universidad de las Fuerzas Armadas ESPE
Unidad de Educación a Distancia
Course:
3. A new page shows a table of every document identifier, with their
respective id. From each id, a URL must be created so that the entire
document can be viewed in a new tab (a new web browser tab), not in
the same web application you are developing.
4. You must also create a page that shows the information of the client
computer from where you are accessing the API. For that, the public API
that you are using provides the following URI https://httpbin.org/get. That
URI returns the data of the client machine in JSON format. The data
must be in a web page, i.e., the data must be formatted as a web page,
the data must not be shown in JSON format. You must show the
following information:
b. The language
You must design the user interfaces for your project (your topic) using React, if
you wish you can use other library or Front-End framework. At least, one of the
designed and implemented pages must consume information from a URI of type
GET. Also, in this implementation, you should learn the use of sessions and
implement them at both the back-end and the front-end layers. To verify that the
sessions were correctly implemented, you must open a URL and a URI of your
project in a browser where you have not yet logged in to the system. If sessions
Topic n° 3
Universidad de las Fuerzas Armadas ESPE
Unidad de Educación a Distancia
Course:
are correctly implemented, the page and the URI should not display the
requested information.
The development must be done as a team, this can be validated in the GitHub
repository, so please split your assignment into 4 programming sections (Don’t
organize as one student designs, other student does requirements, and other
student does programming). The authorship will be written in every file header,
also a validation report is requested in your project report. It must tell how (or
how much) each student did as their part in the project. In summary, each
member of the team must program at least two user interfaces (web
pages) that are requested here.
The execution of the web pages will be recorded in a video on YouTube by all
the team members, the functionality is described while the corresponding
searches of the public API are executed and when the data of the REST service
is printed out in a web page. The video should also show the data in JSON
format produced by the URI, and the data must correspond to the MongoDB
Atlas database, you can use MongoDB Compass. At the beginning of the video,
the names of the members, the name of the team, and the topic should be
mentioned. The link to the YouTube must me in the google doc.
Delivery Format
- A Google Doc, created by the team leader, which contains the number and
name of the team, and team members, screenshots of each of the elements
of the evaluation criteria. In this document at the beginning, you must share
the links to the GitHub repository and to the YouTube video of the activity.
Topic n° 3
Universidad de las Fuerzas Armadas ESPE
Unidad de Educación a Distancia
Course:
Share the document with the tutor of the class. Please create this document
in the classroom drive of this course inside the folder 02ctivity3FrontEnd.
- A zip file, containing a word document (with the content of your google doc),
the design of your project (UML), the design of your web pages (you can do
them in a piece of paper or in any mockup tool) and a folder with the code of
your project (please remove any unneeded folder such as libraries).
- The GitHub repository is the same as in activities 1 and 2. You should not
change the names of the files, you just have to update them and commit to
the repository again and new folders will be created when necessary, for
example the document productBacklog.doc will continue with the name
productBacklog.doc but its content will change according to the
requirements of activities 2 and 3. Inside the 06-Code folder, you must
create a folder called 03WebClient, where you copy the web clients. The
members of the team and the instructor of the course will be invited as
collaborators of the repository in case they have not been invited before,
also, you can make your repository public.
o 01-Definition:
o 02-Requirements :
o 03-Documentation:
o 04-UMLDiagrams
▪ 01-UseCases:
▪ 02-ClassDiagram:
o 05-Tests:
Topic n° 3
Universidad de las Fuerzas Armadas ESPE
Unidad de Educación a Distancia
Course:
o 06-Code:
o 07-Other:
http://github.com/user/Team1lastnamefirstnameTeamLeader
e.g., http://github.com/elascano/Team1lascanojorge
Rubric
_______________________________________________________
GRADE: /4
Topic n° 3