Requirements
For this assignment, you are going to build the following application using React: https://itp404-assignment-3.surge.sh.
This application uses the icanhazdadjoke API. It must behave exactly the same as the example, but you're free to style it however you wish.
- The list of jokes should use
id
as the uniquekey
.
This API requires sending the Accept
HTTP header. Setting the Accept
header to application/json
tells the API to respond with JSON. Here is an example of how to do that with $.ajax()
:
$.ajax({
type: "GET",
url: "https://icanhazdadjoke.com/search?term=cat",
headers: { Accept: "application/json" },
});
Other Requirements
- You are not allowed to use any libraries. Your implementation should only use React, jQuery, and optionally Bootstrap.
- Your implementation must only use the techniques, patterns, and concepts that we covered in class.
- Your implementation should not have any direct DOM manipulation or have any references to
document
orwindow
. All rendering should be done by React via state changes. - There shouldn't be any console warnings or errors when running locally or when deployed to Surge.
Submission
Create a video with audio using Zoom where you demo your assignment and explain where you fulfilled or did not fulfill each requirement. Put a link to this recording in the README.md
file at the root of your project.
Also, deploy your project using Surge and include this link on your README.md
.
https://classroom.github.com/a/bWDoYPuv
If you're having problems uploading to GitHub, please zip up your project and email it to the instructor and TA. Be sure to exclude the node_modules
folder from your zip file. Please include the Zoom recording URL in the email. You can also zip up your project, put it in Google Drive or Dropbox, make the link sharable, and email that link to us.