Key Features
- This the first resource dedicated to the new architectural pattern that powers Facebook
- You'll learn all the tips and tricks you need to get the most out of Flux
- Filled with practical, hands-on samples, you'll not only understand how Flux works, but will be able to start building Flux-powered applications straight away
- Written by Adam Boduch, software architect at Virtustream (EMC), and author of JavaScript at Scale, JavaScript Concurrency, and jQuery UI Cookbook for Packt Publishing
Book Description
Whilst React has become Facebook's poster-child for clean, complex, and modern web development, it has quietly been underpinned by its simplicity. It's just a view. The real beauty in React is actually the architectural pattern that handles data in and out of React applications: Flux. With Flux, you're able to build data-rich applications that engage your users, and scale to meet every demand. It is a key part of the Facebook technology stack that serves billions of users every day.
This book will start by introducing the Flux pattern and help you get an understanding of what it is and how it works. After this, we'll build real-world React applications that highlight the power and simplicity of Flux in action. Finally, we look at the landscape of Flux and explore the Alt and Redux libraries that make React and Flux developments easier.
Filled with fully-worked examples and code-first explanations, by the end of the book, you'll not only have a rock solid understanding of the architecture, but will be ready to implement Flux architecture in anger.
What you will learn
- Understand the Flux pattern and how it will impact your React applications
- Build real-world applications that rely on Flux
- Handle asynchronous actions in your application
- Implement immutable stores with Immutable.js
- Replace React.js with alternate View components such as jQuery and Handlebars
- Test and benchmark your Flux architecture using Jest—Facebook's enhancement of the Jasmine library
About the Author
Adam Boduch has been involved with large-scale JavaScript development for nearly 10 years. Before moving to the front end, he worked on several large-scale cloud computing products using Python and Linux. No stranger to complexity, Adam has practical experience with real-world software systems and the scaling challenges they pose.
He is the author of several JavaScript books, including JavaScript Concurrency, and is passionate about innovative user experiences and high performance.
Table of Contents
- What is Flux?
- Principles of Flux
- Building a Skeleton Architecture
- Creating Actions
- Asynchronous Actions
- Changing Flux Store State
- Viewing Information
- Information Lifecycle
- Immutable Stores
- Implementing a Dispatcher
- Alternative View Components
- Leveraging Flux Libraries
- Testing and Performance
- Flux and the Software Development Lifecycle