Book Image

Mastering Reactive JavaScript

By : Erich de Souza Oliveira
Book Image

Mastering Reactive JavaScript

By: Erich de Souza Oliveira

Overview of this book

If you’re struggling to handle a large amount of data and don’t know how to improve your code readability, then reactive programming is the right solution for you. It lets you describe how your code behaves when changes happen and makes it easier to deal with real-time data. This book will teach you what reactive programming is, and how you can use it to write better applications. The book starts with the basics of reactive programming, what Reactive Extensions is, and how can you use it in JavaScript along with some reactive code using Bacon. Next, you’ll discover what an Observable and an Observer are and when to use them.You'll also find out how you can query data through operators, and how to use schedulers to react to changes. Moving on, you’ll explore the RxJs API, be introduced to the problem of data traffic (backpressure), and see how you can mitigate it. You’ll also learn about other important operators that can help improve your code readability, and you’ll see how to use transducers to compose operators. At the end of the book, you’ll get hands-on experience of using RxJs, and will create a real-time web chat using RxJs on the client and server, providing you with the complete package to master RxJs.
Table of Contents (11 chapters)

Building the application for the first time


To create our application, we must be able to serve at least two static files, the index.html, which is the HTML page, and the bundle.js file, which contains all the logic for the application written in JavaScript.

Serving the static file using express is extremely easy. To do so, let's change the index.js file inside the src folder (src/index.js) where we implemented our express server, and paste the following code:

app.use(express.static('static')); 

This code tells express to serve all files in the static folder as static files; now we will be able to see our page for the first time. To do this, run your application with:

node src/index.js

Do not forget to start the Redis server as we are using it to communicate the messages. If you do not start your Redis server you will see an error like this:

So, do not forget to run the Redis server.

After starting the Redis server, and running our node application, we can already see the web chat application on...