- Create react app
- Delete all unecessary files
- Replace app.css with https://gist.github.com/saussayjesica/cf1726fdaa6157b4d36b1011fb9528d3
- Add google font to index.html
- Add background color to index.css
- Download the weather svgs in this repo in the public folder and save to their project
- Delete all code in App.js
- Create App component from scratch - import react, create class, render, return, export default etc. Explain JSX and mention it should be wrapped in an enclosing tag
- start adding the location code in App.js and hard code values
- pull location code out into a seperate component
- show how props work - move hard coded values to props
- show how state works - move hard coded values from props to state
- add code for weather in App.js and hard code values
- pull weather code out into a seperate component
- go over how props work again - move hard coded values to props
- go over how state works again - move hard coded values from props to state
- add searchbar code - don't include the value and onChange props for input or onClick for button yet
- add the value for the input using state - refer to react docs for more info
- make onChange function - explain event.target (a reference to the object that dispatched the event).console.log event.target so they will see value
- explain setState and add the value to state when the input changes
- have to set up fetch call before doing onClick for button
- create .env file
- add openweathermap api key to the env file
- work through getWeather() function
- set up onClick for button - it calls the getweather function with this.state.textbox as an arguement
- go through componentDidMount and remove all hard coded values in state
EXTRAS - if there is time
- Move searchBar to another component
- Press enter on search bar and it searches
- When you click on search bar it selects all text
- Update fetch to async await
- Convert class components to stateless components
- Add repo to github