Book Image

Building Your Own JavaScript Framework

By : Vlad Filippov
Book Image

Building Your Own JavaScript Framework

By: Vlad Filippov

Overview of this book

JavaScript frameworks play an essential role in web application development; however, no single framework works perfectly for all projects. This book will help you understand existing projects, design new software architecture, and maintain projects as they grow. You’ll go through software architecture principles with JavaScript, along with a guided example of structuring your project and maintenance guidance. This book covers framework planning aspects, enabling you to identify key stakeholders, understand JavaScript API design, and leverage complex abstraction. The second part of the book takes a practical programming approach to building your own framework by showing you how to structure modules and interfaces. As you advance, you’ll discover how to develop data-binding components, work with JavaScript APIs, and much more. While writing a framework is half the job, continuing to develop it requires effort from everyone involved. The concluding chapters help to achieve this by teaching you the crucial aspects of software maintenance and highlighting the constants of framework development. By the end of this book, you’ll have gained a clear understanding of the JavaScript framework landscape, along with the ability to build frameworks for your use cases.
Table of Contents (16 chapters)
1
Part 1: The Landscape of JavaScript Frameworks
6
Part 2: Framework Development
11
Part 3: Maintaining Your Project

Dependencies

The workflow that we mentioned in the previous section is made possible by several external libraries and modules. Here’s a recap of some of the modules that we used in the Componium framework from this chapter:

  • @apollo/server and @graphql-tools/schema: The combination of these two tools allows us to offer the GraphQL features of this framework project. Apollo Server is able to integrate with Componium servers, and it also provides an easy-to-use sandbox to test GraphQL schemas.
  • Chokidar: This is the file-watching library that helps to create a better experience by watching for changes to the application files and performing steps, such as restarting the development server.
  • @inquirer and yargs: These libraries allow us to create the componium command-line tool. Inquirer can create interactive terminal interfaces, useful for Componium development commands, such as componium create. Yargs helps us work with command-line commands, flags, and options...