Book Image

Modern Frontend Development with Node.js

By : Florian Rappl
5 (1)
Book Image

Modern Frontend Development with Node.js

5 (1)
By: Florian Rappl

Overview of this book

Almost a decade after the release of Node.js, the tooling used by frontend developers is fully embracing this cross-platform JavaScript runtime, which is sadly often limited to server-side web development. This is where this Node.js book comes in, showing you what this popular runtime has to offer and how you can unlock its full potential to create frontend-focused web apps. You’ll begin by learning the basics and internals of Node.js, before discovering how to divide your code into modules and packages. Next, you’ll get to grips with the most popular package managers and their uses and find out how to use TypeScript and other JavaScript variants with Node.js. Knowing which tool to use when is crucial, so this book helps you understand all the available state-of-the-art tools in Node.js. You’ll interact with linters such as ESLint and formatters such as Prettier. As you advance, you’ll become well-versed with the Swiss Army Knife for frontend developers – the bundler. You’ll also explore various testing utilities, such as Jest, for code quality verification. Finally, you’ll be able to publish your code in reusable packages with ease. By the end of this web development book, you’ll have gained the knowledge to confidently choose the right code structure for your repositories with all that you’ve learned about monorepos.
Table of Contents (17 chapters)
1
Part 1: Node.js Fundamentals
5
Part 2: Tooling
10
Part 3: Advanced Topics

Index

As this ebook edition doesn't have fixed pagination, the page numbers below are hyperlinked for reference only, based on the printed edition of this book.

A

abstract syntax tree (AST) 55, 56

reference link 55

a.js 15, 22, 24

Angular 3

app.mjs 163

AssemblyScript 164

WASM, writing with 164-167

Asynchronous Module Definition (AMD) 20

specification 20-22

auxiliary tooling 66, 67

AVA test runner 109, 116

using 116-118

B

Babel 51

integrating 52-58

reference link 53

b.js 23, 25

black box tests 106

blocking I/O 7

breakpoints 12

Browserify 83

Bun 83

benefits 175

used, for bundling web apps 175-178

bundlers 80-83

comparing 83-89

C

C/C++ libraries 6

Chai 109

Chrome 5

Chrome DevTools 12

CommonJS 13-15

implementations 13

cross-platform nature 5

cross-platform tool

publishing 139-141

CSS 73

Cypress 120

using, for end-to-end testing 120...