O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Learning Path: Mastering MERN

Video Description

Get started with MongoDB, Express, React and Node

In Detail

You might have heard about MEAN, but what about MERN? Use established web technologies with the latest front-end framework from Facebook in this end-to-end Learning Path on MongoDB, Express, React and Node.js.

Prerequisites: Introductory knowledge of full-stack development

Resources: Code downloads and errata:

  • Learning MongoDB

  • Web Development with Node.JS and MongoDB

  • Mastering Express Web Application Development

  • Mastering ReactJS

  • This path navigates across the following products (in sequential order):

  • Learning MongoDB (3h 26m)

  • Web Development with Node.JS and MongoDB (3h 54m)

  • Mastering Express Web Application Development (2h 51m)

  • Mastering React (1h 33m)

  • Photo Credit: ©iStockphoto.com/TheCrimsonMonkey

    Table of Contents

    1. Chapter 1 : Learning MongoDB
      1. Downloading and Installing Linux 00:10:09
      2. Downloading and Installing Windows 00:06:55
      3. Configuring Startup with a System (Service Integration) 00:06:07
      4. Using the Command-line Tool 00:07:36
      5. Graphical User Interfaces (GUI) 00:06:25
      6. An Overview of JSON 00:05:57
      7. Schemaless but Structured 00:05:58
      8. Adding Data to MongoDB 00:05:04
      9. Querying Data in MongoDB 00:06:45
      10. Advanced Queries, Regex, Projection, and Fields 00:05:38
      11. Pruning Data from MongoDB 00:05:04
      12. Backing Up a Database 00:05:18
      13. Restoring a Database 00:04:21
      14. Other Redundancy Mechanisms 00:03:56
      15. Security 00:04:35
      16. MapReduce Overview and Background 00:05:51
      17. Creating a Map Function 00:06:17
      18. Creating a Reduce Function 00:06:55
      19. Advanced MapReduce Functionality 00:05:05
      20. When to Use MapReduce 00:02:17
      21. An Overview of the Aggregation Framework 00:03:05
      22. Single Purpose Aggregation 00:04:33
      23. Pipeline Components 00:06:25
      24. Example Usage 00:06:11
      25. Expression Operators 00:05:30
      26. SCons and Memory Requirements Used to Build MongoDB 00:03:18
      27. Verifying and Distributing the Build 00:05:55
      28. Authentication and Authorization 00:05:13
      29. Accessing MongoDB Using PHP 00:03:22
      30. Accessing MongoDB Using Python 00:04:32
      31. Types of Nodes 00:02:31
      32. Building a Replica Set 00:04:17
      33. Verifying Failovers 00:03:22
      34. Write Concern 00:03:33
      35. ReadPreference and Load Balancing 00:03:51
      36. Sharding and Ultrascale 00:03:22
      37. Sharding Example 00:05:34
      38. MMS Setup 00:06:38
      39. Reviewing the MMS Feature 00:03:23
      40. Caching MongoDB 00:05:10
    2. Chapter 2 : Web Development with Node.JS and MongoDB
      1. The Course Overview 00:03:29
      2. Node.js Basics 00:04:14
      3. Blocking Versus Non-blocking Code 00:06:14
      4. Setting Up Your Environment 00:05:43
      5. Hello Workout 00:09:11
      6. CommonJS 00:03:49
      7. Npm 00:07:18
      8. The Event Loop 00:08:14
      9. Working with Streams 00:06:03
      10. Working with Files 00:05:17
      11. Express.js Basics 00:04:40
      12. MVC 00:05:29
      13. Routing 00:04:13
      14. Scaffolding an App 00:07:34
      15. Templating with Handlebars 00:05:32
      16. MongoDB Basics 00:05:45
      17. NoSQL 00:03:49
      18. Schema and Data Types 00:06:09
      19. CRUD 00:06:08
      20. Integrating with Node.js 00:04:44
      21. Mongoose 00:07:47
      22. RESTful APIs 00:07:19
      23. Serving APIs 00:05:52
      24. Consuming on the Server-side 00:06:34
      25. Consuming on the Client-side 00:05:13
      26. CRUD Through REST 00:05:52
      27. Unit Testing and TDD 00:06:43
      28. Mocha and Chai 00:05:53
      29. Spying and Stubbing 00:04:58
      30. Mocking with Sinon.JS 00:05:21
      31. Running with Karma 00:05:48
      32. Dependencies and SemVer 00:05:08
      33. package.json 00:05:26
      34. Publishing to npm 00:04:18
      35. Heroku Basics 00:05:07
      36. Deploying on Heroku 00:05:33
      37. Optimizing Page Performance 00:06:43
      38. Isomorphic JavaScript 00:05:04
      39. Bundling with Webpack 00:04:39
      40. Finishing the App 00:05:34
      41. Final Remarks 00:06:08
    3. Chapter 3 : Mastering Express Web Application Development
      1. The Course Overview 00:02:19
      2. Configuration with nconf 00:10:16
      3. Getting to Know Winston 00:10:23
      4. Installing and Using Nunjucks 00:06:17
      5. Consuming the Instagram API 00:04:49
      6. Showing the Results on a Page 00:06:47
      7. Caching Requests in Memory 00:05:37
      8. Installing Mocha 00:05:01
      9. Refactoring to Make Things Testable 00:04:38
      10. Mocking to Remove Dependencies 00:07:13
      11. Spying with Sinon.js 00:06:31
      12. Installing Socket.io 00:03:53
      13. Sending and Receiving Data in Real-time 00:08:18
      14. Scoping Data to Individual Users 00:06:59
      15. Adding a Chat Room 00:02:53
      16. Middleware 00:06:11
      17. Mounting Sub-applications 00:03:35
      18. Serving Content Conditionally for AJAX 00:06:04
      19. Persistance with Sequelize and MySQL 00:09:06
      20. HTTPS and Express 00:09:34
      21. Preventing CSRF 00:08:02
      22. Using Helmet to Make Your App More Secure 00:03:31
      23. Improving Performance with Node.js Cluster 00:05:02
      24. Nginx and Node.js 00:02:51
      25. Using Supervisord to Keep Things Running 00:08:31
      26. ghost.org 00:08:53
      27. Balloons.io 00:07:57
    4. Chapter 4 : Mastering React
      1. The Course Overview 00:02:57
      2. Setting Up Your Development Environment for React 00:04:12
      3. JSX and Component Composition 00:03:00
      4. The Component Life Cycle and the Virtual DOM 00:04:50
      5. Building a Solid Foundation 00:03:12
      6. Adding Dynamic Content 00:04:24
      7. Writing Unit Tests for React Components 00:06:39
      8. Unit Testing Complex React Components 00:04:16
      9. Type Checking with Flow 00:02:48
      10. Fetching Orders from the Server 00:06:51
      11. Manipulating the State 00:02:58
      12. State Management 00:05:02
      13. shouldComponentUpdate and React.addons.Perf 00:04:57
      14. Troubleshooting Bugs with the React Chrome Extension 00:02:45
      15. Utilizing a Router to Manage Our URLs and Main Entry Points 00:03:28
      16. Adding Charts to the Dashboard 00:08:05
      17. Server-side Rendering and Routing 00:03:27
      18. Server-side Rendering with Data 00:04:10
      19. Adding a Digest E-mail with Inline Styles 00:02:58
      20. Inlining SVG Charts Digest E-mail 00:04:37
      21. Setting Up a React Native iOS App 00:03:25
      22. Rendering Orders with Data from the Server in iOS 00:03:57