Course Outline

Development of modern front-end applications

  • overview and similarities of React, Angular, Vue.js
  • declarative rendering
  • components - defining custom HTML tags
  • using create-react-app to initialize a React project

Modern JavaScript

  • developing using node.js and npm
  • JavaScript versions
  • working with modules
  • functions and arrow functions
  • classes
  • functional programming in JavaScript (map, filter, ...)


  • static vs dynamic typing
  • declaring types of variables, functions and classes
  • basic data types
  • tuples, objects
  • interfaces
  • generics

React template language

  • JavaScript-based template language: JSX
  • setting element properties
  • repeating elements
  • if / else
  • events
  • CSS classes and styles

Managing state in React

  • setting and changing the application state
  • using the state hook and setState
  • capturing the content of input elements in the state

Components: Building blocks of modern web applications

  • defining custom HTML tags in React
  • state, props & events
  • data flow between components
  • function components and class components
  • using hooks in function components
  • component lifecycle events (mount, update, unmount)
  • including predefined components from a library

State management with Redux

  • Redux basics: state mangment with pure functions, reducers and immutable data
  • using the reducer hook in React
  • integrating Redux into a React application
  • presentational and container components
  • the Redux ecosystem
  • handling asynchronous events with Thunk
  • fetching data from a REST API

Developer tools and testing

  • React developer tools
  • Redux developer tools
  • Testing JavaScript with Jest
  • Testing reducers
  • Testing React components

React Router

  • client-side routing
  • displaying different views based on the current browser route

App development with React

  • short overview of React Native
  • creating an installable mobile and desktop application with Progressive Web Apps
  • comparison of Progressive Web Apps and native apps


  • HTML basics
  • experience with JavaScript
  21 Hours


Related Courses

PHP with React

  14 hours

React: Build Highly Interactive Web Applications

  21 hours

Relay: Efficiently Fetch Data in React Applications

  14 hours

React Patterns

  14 hours

Advanced React

  14 hours


  7 hours

Advanced TypeScript

  7 hours

Typescript Unit Testing

  14 hours

Choosing the Right JavaScript Framework

  14 hours

Building Interactive Applications with React, Redux and GraphQL

  28 hours

Testing React Apps with Jest

  14 hours

React, Relay, and GraphQL

  14 hours

Ant Design

  7 hours

Material UI

  7 hours

Managing React State with MobX

  14 hours