Cory is a Microsoft MVP in C#, founder of OutlierDeveloper.com, avid tech reader, and speaker.
He believes in clean code, pragmatic development, and responsive native UIs.
Also in this series:
Part 1 – You Need a Starter Kit
Part 2 – Editors and Configuration
Part 3 – Package Management
Part 4 – Development Web Server
Part 5 – Automation
Part 6 – Transpiling
Part 7 – Bundling
Part 8 – Linting
Part 9 – Testing and Continuous Integration
Part 10 – HTTP Calls
Part 11 – Project Structure
Part 12 – Production Build
Part 13 – Production Deploy
Development Web Server
Development Web Servers
Cory describes 8 popular options:
– http-server (ultra simple with a rocketpowered turtle)
– live-server (lightweight and supports live-reloading)
– Express (comprehensive, highly configurable, production grade)
– koa (Express alternative, strongly embraces ES6 generators)
– hapi (Express alternative, compelling configuration model)
– budo (Integrates with Browserify, includes hot reloading)
– webpack dev server (Built in to Webpack, serves from memory and includes hot reloading)
– Browsersync (Dedicated IP for sharing work on LAN, all interactions remain in sync, great for cross-device testing)
Demo: Set up Express
Cory creates srcServer.js which handles requests to get the index.html, and listens to requests on port 3000.
We can run this with the command
> node buildScripts/srcServer.js
For more on using Express see Jonathan Mills course.
To easily share your work in progress, without signing up to a cloud provider such AWS or Azure, here are some options:
– localtunnel (lowest friction and versatile)
– ngrok (secure tunnel to your local machine, a little more setup)
– Surge (Quickly host static files to publc URL, no firewall hole)
– now (Quickly deploy Node.js to the cloud, no firewall hole)
Demo: Sharing Work-in-progress
Cory uses the simplest use to solution which is localtunnel. To install globally:
> npm install localtunnel -g
We also see how to setup a subdomain, and Cory gives a tip on using localtunnel with Browsersync. He says it’s a compelling combination.