In this chapter, we built a simple CRUD implementation of a shopping cart application. On the frontend, we started building the application with a very basic one-page implementation and, through refactoring, we implemented client-side routing with the react-router module. We continued exploring the data patterns of React and its implementation with Meteor's reactive container.
On the server with the second refactoring, we moved the client side of the data modifications to the server with the implementation of the Meteor Methods. We also got familiar with the common pitfalls of the schema-less architecture of MongoDB, and we learned the basics of type checks on incoming documents and validations against predefined schemas.