Book Image

Mastering RethinkDB

By : Shahid Shaikh
Book Image

Mastering RethinkDB

By: Shahid Shaikh

Overview of this book

RethinkDB has a lot of cool things to be excited about: ReQL (its readable,highly-functional syntax), cluster management, primitives for 21st century applications, and change-feeds. This book starts with a brief overview of the RethinkDB architecture and data modeling, and coverage of the advanced ReQL queries to work with JSON documents. Then, you will quickly jump to implementing these concepts in real-world scenarios, by building real-time applications on polling, data synchronization, share market, and the geospatial domain using RethinkDB and Node.js. You will also see how to tweak RethinkDB's capabilities to ensure faster data processing by exploring the sharding and replication techniques in depth. Then, we will take you through the more advanced administration tasks as well as show you the various deployment techniques using PaaS, Docker, and Compose. By the time you have finished reading this book, you would have taken your knowledge of RethinkDB to the next level, and will be able to use the concepts in RethinkDB to develop efficient, real-time applications with ease.
Table of Contents (16 chapters)
Mastering RethinkDB
Credits
About the Author
About the Reviewer
www.PacktPub.com
Preface

Developing a simple web application using Horizon


We have learned the basics of Horizon, installation and its APIs. Now it's time to combine our knowledge and build something out of it. In this section, we are going to develop a simple application that lets the user manage a TODO list. The end output will look like this:

The user can perform the following operation:

  1. Add todo.

  2. Update the status of todo.

  3. Remove todo.

The codebase is provided by an awesome contributor, Daniel Allan, and the base style is forked from TodoMVC http://todomvc.com/.

Really amazing job, guys.

Let's move ahead to setting up the project.

Setting up the project

Start the project by creating a Horizon project using the Horizon CLI:

hz init todoHorizon 

Now switch to the project directory and go to the dist folder. Refer to the following command:

cd todoHorizon && cd dist

Remove the existing index.html file and create package.json using the following command as shown here :

npm init --y

Now, let's install the required...