a) Rendering a collection, modules
b) Form
c) Getting data from server
d) Altering data in server
e) Adding styles to React app
FULL STACK OPEN 2019
======================== archive ============================
FullStack-Course << Universiy-of-Helsinki >> 2019 This course serves as an introduction to modern web application development with JavaScript. The main focus is on building single page > applications with ReactJS that use REST APIs built with Node.js. The course also contains a section on GraphQL, a modern alternative to REST APIs.
Part 0: Fundamentals of Web Apps a) 0.4 Diagram "new note"
b) 0.5 Diagram "Single Page App"
c) 0.6 Diagram "New note" (different process)
Part 1: Intro to React a) Intro to React
b) Javascript
c) Component state, event handlers
d) Complex state and debugging apps
Part 2: Communicating with server a) Rendering a collection, modules
b) Form
c) Getting data from server
d) Altering data in server
e) Adding styles to React app
Part 3: Programming a server with NodeJS and Express a) Node.js and Express
b) Deploying app to internet (Heroku)
c) Saving data to MongoDB
d) Validation and ESLint
Part 4: Testing Express servers, user administration a) Structure of backend application, introduction to testing
b) Testing the backend
c) User administration
d) Token authentication (JSON Web Tokens)
Part 5: Testing React apps, custom hooks a) Login in frontend (connecting with backend from part 4)
b) props.children and proptypes
c) Testing React apps
d) Custom hooks (creating our own custom hooks to be reused)
Part 6: State management with Redux a) Flux-architecture and Redux
b) Many reducers, connect
c) Communicating with server in a redux application (Redux-thunk)
Part 7: React router, styling app with CSS and webpack a) React-router
b) More about Styles
c) Webpack
d) Class components, E2E testing
e) Misc - 5 hours
f) Exercises - Extending the bloglist
Part 8: GraphQL a) GraphQL server
b) React and GraphQL
c) Database and user admin
d) Login and updating the cache
e) Fragments and subscriptions
===================== archive ==========================