Philosophy

The intended audience and development philosophy behind Lore

Redux Beginners

So you've got some experience with React and are interested in learning more about Redux? Welcome!

Redux is a great library to use as the architectural foundation for a React application, but it comes with a couple challenges for beginners.

The first challenge is that Redux itself makes no assumptions about what kind of application you're building, which means the official documentation doesn't provide clear guidelines for what reducers and actions should look like for single page applications that consume data from a REST API. That's something that's left for you to figure out for yourself.

The second challenge is that while there's a certain elegance to Redux due to it's simplicity, that simplicity comes with a lot of boilerplate. For small applications it's not too bad, but as an application grows to consume an API with a large number of endpoints, it's not an exaggeration to state that you can end up with multiple Actions and Reducers for each endpoint, and find yourself juggling a hundred or more files that are nearly identical. Knowing how to tame that boilerplate isn't clear at first.

So Lore has two core goals for Redux beginners;

  1. Provide opinions about what Actions and Reducers should look like, and what each should be responsible for
  2. Demonstrate patterns you can use to build Actions and Reducers that eliminate boilerplate

Admittedly Lore won't actually teach you Redux directly; the point of the framework is to provide a vehicle for using it without having to understand how it works. But if you want to see what's possible with it, the framework can be a great tool to discover that.

Then, once you want to dive in and understand more about Redux itself, you can find some recommended resources for learning it here.