The practical exam will be in-class on 10/28 from 5-8pm where you will build a web application using React based on requirements I give you using the material that we have covered in the weeks leading up to the exam. You can use previous assignments, notes, assignment solutions, and the internet to look things up EXCEPT AI like ChatGPT. Your implementation should only use concepts, techniques, and patterns that we've covered in class. You are NOT ALLOWED to communicate with anyone in or outside of the class by any means.
To study, review past assignments, Quiz 1, class demos, and any slides that I went over.
Topics You Should Study
- Making GET requests with
$.ajax()
orfetch()
and extracting data from JSON map
andfilter
- React:
useState
, conditional rendering, rendering lists, forms and controlled inputs - Client-side routing with React Router
Topics You Don't Need To Study
- The APIs we've worked with
- DOMPurify or creating elements with
document.createElement()
- JSON Server
Submission
- Deploy your project to Surge and include your Surge link in your project's README.md.
- Push your code to GitHub: https://classroom.github.com/a/9JDSN3vt. If you're having problems uploading to GitHub, please zip up your project WITHOUT
node_modules
and email it to the instructor and TA. You will receive a 5 point deduction for not submitting via GitHub. You can also zip up your project, put it in Google Drive or Dropbox, make the link sharable, and email that link to us.
Points will be deducted for the following:
- Surge link is missing or doesn't work
- You push up
node_modules
to GitHub or includenode_modules
in your zip file if you submit it via email
You will get a 0 on the practical exam if:
- Code isn't pushed up to GitHub
- Code is submitted after the deadline