Introduction
A thriving module ecosystem has been one of the core goals of Node since its inception. The framework leans heavily toward modularization. Even the core functionality (such as HTTP) is made available through the module system.
It's almost as easy to create our own modules as it is to use core and third-party modules. All we need to know are a few best practices and how the module system works.
A great module is the one that performs a specific function to a high standard, and great code is the result of multiple development cycles. In this chapter, we're going to develop a module from scratch, beginning with defining its Application Programming Interface (API) to creating our module over a series of development cycle iterations. We'll finally deploy it to npm for everyone's benefit.