Express.js Blueprints

More Information
Learn
  • Set up the Express.js framework with a basic scaffold
  • Model data using Mongoose and build a CRUD API to store the data in a database
  • Use promises to avoid callback hell in Node.js
  • Address scalability concerns and deal with race conditions
  • Apply test-driven development (TDD) by using Mocha to write tests for your apps
  • Get familiar with service-oriented architecture (SOA)
  • Integrate Socket.IO and dynamically push updates to the client
  • Write Node.js APIs by leveraging generator functions using Koa.js
About

APIs are at the core of every serious web application. Express.js is the most popular framework for building on top of Node.js, an exciting tool that is easy to use and allows you to build APIs and develop your backend in JavaScript. Express.js Blueprints consists of many well-crafted tutorials that will teach you how to build robust APIs using Express.js.

The book covers various different types of applications, each with a diverse set of challenges. You will start with the basics such as hosting static content and user authentication and work your way up to creating real-time, multiplayer online games using a combination of HTTP and Socket.IO. Next, you'll learn the principles of SOA in Node.js and see them used to build a pairing as a service. If that's not enough, we'll build a CRUD backend to post links and upvote with Koa.js!

Features
  • Develop scalable APIs using the Express.js framework for Node.js
  • Be more productive by learning about Express.js intricacies and its supporting libraries
  • Get to grips with coding best practices and Test-Driven Development to create real-world applications using Express.js
Page Count 198
Course Length 5 hours 56 minutes
ISBN 9781783983025
Date Of Publication 13 May 2015

Authors

Ben Augarten

Ben Augarten is a senior software engineer at Twitter, in the beautiful city of Boulder, Colorado, USA. He is an electrical engineering and computer science graduate from the University of California, Berkeley. He is the author of node-RESTful, a library used to generate RESTful endpoints for domain resources. Ben writes programs that are widely used, functional, and scalable. He primarily works on distributed systems, data processing, and web technologies.

Marc Kuo

Marc Kuo has a neat freak personality, which is reflected in his clean and proficient code. As a full stack developer at Axiom Zen, he architects shipshape infrastructure and efficient model databases. He loves to hack in Common Lisp, CoffeeScript, Angular, and Node.js.

_x000D_

The neat freak in Marc comes from two important principles: efficiency and optimization. He is the founder of Routific, a routing solution that reduces waste in the transportation sector. In the open source field, he is the author of Alike and Look-Alike(recommendation engines for Node.js), T3 (Ultimate Tic-Tac-Toe), and Zenbase-angular (gulp-angular-coffee-stylus-jade boilerplate).

Fabiano Pereira Soriani

Fabiano Pereira Soriani does what he loves as a software developer at Axiom Zen in Santiago, Chile. He holds a bachelor's degree in computer science from the Universidade Estadual de Londrina, Brazil, and a certification in project management from Canada. He has developed software professionally for over 5 years, always focusing on new and productive web technologies, with an intense focus on the impact they have on users and other stakeholders alike. He aims for excellence in product and agile product lifecycles.

_x000D_

Fabiano has published open source Node.js packages and a number of how-to blog posts, ranging from backend concepts and Ruby on Rails all the way through to the cutting-edge frontend.

Eric Lin

Eric Lin is a software engineer at Axiom Zen in Vancouver, British Columbia, Canada. He completed his master's degree in statistics and has been developing software professionally for 2 years. He is always looking forward to picking up new languages and technologies while having a personal interest in data analytics and predictive modeling.

Chiqing Zhang

Chiqing Zhang is an exceptional software architect, whose clean and simple code has leveraged scalable and maintainable systems for some of the world's top technology companies, such as Microsoft, Baidu, and AppAnnie. As a full stack developer at Axiom Zen, he is passionate about building highly reliable systems and delivering products with the best user experience. Chiqing was granted a patent for multilayer structured data operations and he has published a book on Microsoft Silverlight technologies.

Geoffrey Tisserand

Geoffrey Tisserand is a full stack software engineer, who focuses on building reliable and scalable applications and services for Axiom Zen's products. He completed his master's degree in computer science at the Université de technologie in Belfort-Montbéliard, France. He is a nitpicky and detail-oriented JavaScript and Ruby ninja, who really enjoys discovering new technologies, APIs, and frameworks to play with.

_x000D_

A start-up enthusiast, Geoffrey is thrilled to be in an environment where he is constantly learning and improving his skills. He also loves to build side-projects and create experiments, and is always thinking about his next idea for a start-up.

Aidha Shaikh

Aidha Shaikh has a doctoral degree in chemistry from the University of British Columbia, where she researched enzymes that cleave blood antigens to make universal O-type blood, and published several first-authored papers. After completing an NSERC Post Doctoral Industrial R&D Fellowship, she embraced her love for coding. She recently stepped out of her lab coat and donned a coder hoodie with pride.

_x000D_

Aidha's research-rich past stays with her as she constantly looks for new ways to solve problems, and she loves learning new things everyday. She started off with frontend web development. She really loves to hack into Node.js and Express.js.

Kan Zhang

Kan Zhang is an experienced software engineer with both a bachelor's degree in civil engineering and a bachelor's degree in computer science. He has gained substantial project management experience from leading personal team projects as well as previous civil engineering internships.

_x000D_

Kan has also worked on many Android apps, mobile games, and backend systems for various applications and services. He is currently working as a software engineer at Axiom Zen, discovering his love for new technologies, innovative products, and exciting start-ups.