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 is how the module system works and a few best practices.
A great module is 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 the benefit of all.