React, Redux, and Redux Saga With Symfony 3

In the previous series we built a backend API for handling user registration, login, and profile management.

Whilst having an API for these features is nice, it's a little much to expect the vast majority of our customers to work directly with an API. Instead, we must also provide a front end to put a GUI / friendly user interface over the API.

You are, of course, free to use pretty much any technology stack you desire to do this. My personal favourite front end stack is React, with Redux for managing application state, and Redux Sagas for managing side effects.

Whilst I fully understand the frustrations and reluctance to continually learn all the new shiny things released in the JavaScript community, the tech stack in this series is, in my opinion, a fairly solid foundation for the next few years in real-world JavaScript projects. I say this with some confidence as I personally work with enterprise clients moving to React / Redux / Redux Sagas.

The application we are going to build in this series can serve as the basis for many applications - from side projects, to SaaS apps, to many other kinds of web applications.

We will build a site with the following features:

  • a registration form
  • a login form
  • a page to view and update your user profile
  • add the ability to update your current password
  • restricted pages - e.g. must be logged in to view the profile page
  • unprotected pages

This course is designed for PHP / Symfony developers who wish to learn about React / Redux / Redux Sagas, whilst still working with Symfony on the back end.

You will still find this course useful if you have an existing back end API, though will have to adapt the error handling section to your own implementation. This should be as simple as writing your own implementation of the error handler.

The buzzwords covered in this series include:

  • Symfony 3 RESTful API
  • React
  • Redux
  • Redux Sagas
  • React Router
  • Redux Form
  • JavaScript ES6
  • Async / Await

And a whole bunch more.


Code For This Course

Get the code for this course.

Presented By

Christopher Moss

Christopher Moss

Hi, I'm Chris and welcome to In this video you will learn about... :)