Building Enterprise JavaScript Applications
- Length: 764 pages
- Edition: 1
- Language: English
- Publisher: Packt Publishing
- Publication Date: 2018-09-29
- ISBN-10: 1788477324
- ISBN-13: 9781788477321
- Sales Rank: #2618194 (See Top 100 Books)
Strengthen your applications by adopting Test-Driven Development (TDD), the OpenAPI Specification, Continuous Integration (CI), and container orchestration.
Key Features
- Create production-grade JavaScript applications from scratch
- Build microservices and deploy them to a Docker container for scaling applications
- Test and deploy your code with confidence using Travis CI
Book Description
With the over-abundance of tools in the JavaScript ecosystem, it’s easy to feel lost. Build tools, package managers, loaders, bundlers, linters, compilers, transpilers, typecheckers – how do you make sense of it all?
In this book, we will build a simple API and React application from scratch. We begin by setting up our development environment using Git, yarn, Babel, and ESLint. Then, we will use Express, Elasticsearch and JSON Web Tokens (JWTs) to build a stateless API service. For the front-end, we will use React, Redux, and Webpack.
A central theme in the book is maintaining code quality. As such, we will enforce a Test-Driven Development (TDD) process using Selenium, Cucumber, Mocha, Sinon, and Istanbul. As we progress through the book, the focus will shift towards automation and infrastructure. You will learn to work with Continuous Integration (CI) servers like Jenkins, deploying services inside Docker containers, and run them on Kubernetes.
By following this book, you would gain the skills needed to build robust, production-ready applications.
What you will learn
- Practice Test-Driven Development (TDD) throughout the entire book
- Use Cucumber, Mocha and Selenium to write E2E, integration, unit and UI tests
- Build stateless APIs using Express and Elasticsearch
- Document your API using OpenAPI and Swagger
- Build and bundle front-end applications using React, Redux and Webpack
- Containerize services using Docker
- Deploying scalable microservices using Kubernetes
Who this book is for
If you’re a JavaScript developer looking to expand your skillset and become a senior JavaScript developer by building production-ready web applications, then this book is for you.
Table of Contents
- The Importance of Good Code
- Using Isomorphic JavaScript
- Principles of JavaScript
- Writing in ECMAScript 2015+
- Managing Version History with Git
- Setting Up Development Tools
- TDD Part I – End-to-End Tests
- TDD Part II – Unit / Integration Tests
- Deploying Your Application on a VPS
- Continuous Integration
- Security – Authentication & Authorization
- Documenting Our API
- Creating UI with React
- E2E Testing in React
- Managing State with Redux
- Migrating to Docker
- Container Management with Kubernetes
- Managing States with Redux
- Robust Infrastructure with Kubernetes