TODO
- How web apps work
- The 2 typical kinds of web apps
-
Server-side rendering
- How it works: Request-to-render lifecycle
- Example: Cathay seat booking
-
Client-side rendering (the typical SPA)
- How it works: Request-to-full-render lifecycle
- Example: Youtube
-
-
Display (read) 👀
- Plain ol' HTML in JSX
- Rendering HTML with variables
- Rendering a list of objects
-
Actions (write) ⌨️
- What is “State”
- How to modify state
- Counter button example
- TODO list example (CRUD)
-
Modularisation with React Components
- Split out TODO code into a component
- Query for TODOs displaying, from https://jsonplaceholder.typicode.com/todos 📝
- Styling our app with emotion / styled-components 💅
- Using component libraries like ant-design 🐜
(for those who wanna follow along)
- Install nodejs: https://nodejs.org/en/download/
- create-react-app: https://reactjs.org/docs/create-a-new-react-app.html#create-react-app
- Visit localhost:3000 (if it doesn’t automatically appear)
- Make sure you see the following page:

- Open up your favourite ide (e.g. vscode or intellij, not notepad++) and import (open) the project
- Try changing the "Edit src/App.js and save to reload." text to "Hello world!" and see the automagical reload
- 🚀
- Frontend fundamentals
- Pages in an SPA
- CSS
- JS and TS
- Backend fundamentals
- Notice we're using jsonplaceholder to fetch TODOs data - try creating your own? Enter the world of backend development
- Fullstack development
- Automated testing - Unit, E2E
- Richer frontend frameworks - Next, Gatsby, etc.
- Richer backend frameworks
- Express, Flask,
- Nest, Django, Spring