This is a simple React app using class components. It fetches a list of jokes from an API which can then be up/down voted. The jokes and votes are persisted in local storage.
The project was built using create-react-app and uses axios to make API calls.
Useful things I practised while doing this project included:
- React state management
- React lifecycle methods
- using local storage
- event handling
- API calls and async JavaScript
- dealing with a loading state
- Work on the app's behaviour when a joke's votes cause its position to swap - this doesn't currently provide a good user experience
- Responsive styling
- This project was built as part of a Udemy React course
- API used: I can haz dad jokes API
- Emoji library used: Emoji CSS library
- Deployed to GitHub pages using this deployment tutorial
After cloning the repo, run npm install
to install project.
To run the app in development mode run npm start
. Open http://localhost:3000 to view it in your browser.