
005 Saul Maddox, Software Engineer at PROS, shares insights about his Hapi-Ninja boilerplate and its technology (Node.js, Hapijs web framework, Swig, Gulp)
04/07/14 • 34 min
Saul Maddox, a software engineer for PROS, joins me in this episode of CodeWinds to discuss his Hapi-Ninja boilerplate which helps developers get up and running with the Hapi Node.js web framework.
We discuss in detail the stack he has chosen and the reasons for selecting each:
- Hapijs Node.js web framework
- Swig templates
- Gulp javascript streaming task runner
- Plugins he has included for assets and routes
Saul explains the file structure of Hapi-Ninja mentioning how to configure and get up and running with Hapi quickly and easily.
Episode Info
- Episode: CW 005
- Published: April 7th, 2014
- Tags: js, nodejs,web,framework,boilerplate
- Duration: 34:17
Episode Notes
Episode timeline
- 02:06 - Introduction to the Hapi-Ninja boilerplate
- 05:44 - Details of Hapi-Ninja stack
- 06:00 - Hapi Node.js web framework
- 08:34 - Swig javascript templates
- 11:17 - Gulp Node.js streaming task runner
- 13:52 - Getting started with Hapi-Ninja boilerplate
- 14:44 - Using a watcher like node-supervisor to auto reload
- 15:47 - Hapi-Ninja file structure
- 18:38 - Configuration
- 18:55 - Hapi-Assets plugin for minimizing and concatenating assets
- 21:42 - Hapi-Named-Routes plugin
- 23:31 - Hapi-Cache Buster plugin for easier browser reloading in development
- 25:26 - Easy switching from full frontend app (PhoneGap) to a frontend and server using same folder structure
- 27:02 - Hapi-Ninja code is commented heavily to help new users learn
- 27:41 - Upgrading from Hapi 2.x to 3.x
- 28:37 - Contributing
- 30:08 - Other projects
- 30:25 - Ever Stain project - legacy website for being remembered
- 32:16 - Following Saul
Getting started with Hapi-Ninja
- Install Nodejs
- Clone repo from GitHub
- Change working directory into the new path
- Install dependencies from npm
Links from Show
- Hapi-Ninja boilerplate GitHub Repo
- Hapijs Node.js web framework
- Swig templates
- Gulp javascript streaming task runner
- Hapi-Named-Routes plugin for using named routes
- Hapi-Assets plugin for automatically minimizing and concatenating assets
- Hapi-Cache-Buster plugin which helps with serving fresh content in development
- Ever Stain legacy website coming soon by Saul Maddox. How will you be remembered?
Following Saul Maddox
Saul Maddox, a software engineer for PROS, joins me in this episode of CodeWinds to discuss his Hapi-Ninja boilerplate which helps developers get up and running with the Hapi Node.js web framework.
We discuss in detail the stack he has chosen and the reasons for selecting each:
- Hapijs Node.js web framework
- Swig templates
- Gulp javascript streaming task runner
- Plugins he has included for assets and routes
Saul explains the file structure of Hapi-Ninja mentioning how to configure and get up and running with Hapi quickly and easily.
Episode Info
- Episode: CW 005
- Published: April 7th, 2014
- Tags: js, nodejs,web,framework,boilerplate
- Duration: 34:17
Episode Notes
Episode timeline
- 02:06 - Introduction to the Hapi-Ninja boilerplate
- 05:44 - Details of Hapi-Ninja stack
- 06:00 - Hapi Node.js web framework
- 08:34 - Swig javascript templates
- 11:17 - Gulp Node.js streaming task runner
- 13:52 - Getting started with Hapi-Ninja boilerplate
- 14:44 - Using a watcher like node-supervisor to auto reload
- 15:47 - Hapi-Ninja file structure
- 18:38 - Configuration
- 18:55 - Hapi-Assets plugin for minimizing and concatenating assets
- 21:42 - Hapi-Named-Routes plugin
- 23:31 - Hapi-Cache Buster plugin for easier browser reloading in development
- 25:26 - Easy switching from full frontend app (PhoneGap) to a frontend and server using same folder structure
- 27:02 - Hapi-Ninja code is commented heavily to help new users learn
- 27:41 - Upgrading from Hapi 2.x to 3.x
- 28:37 - Contributing
- 30:08 - Other projects
- 30:25 - Ever Stain project - legacy website for being remembered
- 32:16 - Following Saul
Getting started with Hapi-Ninja
- Install Nodejs
- Clone repo from GitHub
- Change working directory into the new path
- Install dependencies from npm
Links from Show
- Hapi-Ninja boilerplate GitHub Repo
- Hapijs Node.js web framework
- Swig templates
- Gulp javascript streaming task runner
- Hapi-Named-Routes plugin for using named routes
- Hapi-Assets plugin for automatically minimizing and concatenating assets
- Hapi-Cache-Buster plugin which helps with serving fresh content in development
- Ever Stain legacy website coming soon by Saul Maddox. How will you be remembered?
Following Saul Maddox
Previous Episode

004 Pete Hunt, Software Engineer for Facebook, discussing Facebook's open source js UI framework, React
In this episode, Jeff interviews Pete Hunt, a software engineer with Facebook about Facebook’s hot new open source js UI framework, React. React is a fresh look at how to build UI’s, attempting to improve on the limitations of the past. React gets some of its inspiration from how game engines acehieve awesome performance in their rendering pipeline.
React can be used in the browser and on the server with node.js so you can have single page apps that are fully indexable by the search engines and have instant load characteristics. React has pluggable backends so it can be used to target the DOM, HTML, canvas, SVG, and other formats.
The ideas and concepts behind React are very compelling, I encourage you to give it a look.
Episode Info
- Episode: CW 004
- Published: March 17th, 2014
- Tags: js, nodejs,UI,framework
- Duration: 42:17
- Updated: 2014-05-01 Added links to great articles by Reto Schläpfer
Episode Notes
Interview timeline
- 2:08 - What is React and why might people want to use it?
- 3:08 - The symbiotic relationship of ClojureScript and React
- 4:54 - The history of React and why it was created
- 9:43 - Updating web page with React without using data binding, a better approach inspired by game engines
- 13:11 - Using the virtual DOM to change the browser DOM
- 13:57 - Programming with React, render target HTML, canvas, other. Javascript is reference implementation of React. Node.js, ClojureScript, other environments.
- 16:45 - Working with designers. Contrasted with Ember and AngularJS. React encourages building a component architecture.
- 21:45 - JSX Compiler bridging HTML and React javascript
- 23:50 - Autobuilding JSX and in browser tools for React
- 24:50 - Tips and tricks to working with React, suggestions for getting started with React
- 27:17 - Rendering HTML on the server with Node.js. Pluggable React rendering backends (DOM, HTML, canvas, mixed mode static HTML + background JS binding). Better single page app performance
- 29:20 - React evolved through survival of the fittest at Facebook
- 30:15 - Ideas for having state on server and client, possibilities for using React over web sockets.
- 32:05 - React-multiuser - distributed shared mutable state using Firebase
- 33:03 - Better debugging with React using the state transitions, rewinding the state to replay the events
- 34:08 - Differences from Web Components
- 34:25 - Notable companies using React - Khan Academy, Oscars (Neartime.com), Largest bank in Russia, Facebook, Instagram
- 35:16 - Could a React backend plugin be created to target PDF?
- 36:30 - Future of React, what’s next?
- 39:38 - Contributing and getting help
Notable users of React
- Instagram.com is 100% built on React, both public site and internal tools.
- Facebook.com’s commenting interface, business management tools, Lookback video editor, page insights, and most, if not all, new JS development.
- Khan Academy uses React for most new JS development.
- Shirtstarter is 100% built on React.
- Sberbank, Russia’s number one bank, is built with React.
- The New York Times’s 2014 Red Carpet Project is built with React.
Resources
Links from Show
- Main Reactjs.org site
- Github Repo for Reactjs Source
- Pete Hunt’s Twitter
- Khan Academy question editor GitHub repo written in React
- irc: #reactjs on freenode
Online Training Courses
- CodeWinds React.js Fundamentals - The premier online course and community where you learn React.js by pragmatically building a real web app while applying TDD/BDD principles
- Kevin Old, Senior Software Engineer “Look no further, the React.js Fundamenta...
Next Episode

006 Daniel Shaw (@dshaw) introduces NodeSource at JSConf 2014
Episode Info
- Episode: CW 006
- Published: June 18th, 2014
- Tags: nodejs, jsconf
- Duration: 23:54
Episode Notes
NodeSource is a professional Node.js software company. NodeSource provides enterprise-grade software products and educational and professional consulting services to empower companies to be effective and productive with Node.js.
- https://nodesource.com/ - NodeSource website with team background
- https://nodesource.com/products - NodeSource products
- npm Plus - NodeSource is the premier, certified reseller of on-premise, private npm instances. NodeSource has partnered with npm Inc. to deliver a secure, on-premise, private npm solution alongside managed services such as:
- Bespoke npm Training
- 24x7x365 Support
- Custom Integrations (LDAP, SSO, etc.)
- N|Ship - NodeSource’s official Node.js deployment solution to make app deployments easy, secure and automated.
- npm Plus - NodeSource is the premier, certified reseller of on-premise, private npm instances. NodeSource has partnered with npm Inc. to deliver a secure, on-premise, private npm solution alongside managed services such as:
- http://2014.jsconf.us/ - JSConf 2014 - May 27-31, 2014 at Amelia Island, FL
NodeSource Team (mentioned in interview)
![DanShaw][] ![JoeMccann][] ![RodVagg][] ![ChrisWilliams][] ![TrevorNorris][]Social Media Links
NodeSource Team (partial list) CodeWindsIf you like this episode you’ll love
Episode Comments
Generate a badge
Get a badge for your website that links back to this episode
<a href="https://goodpods.com/podcasts/codewinds-leading-edge-web-developer-news-and-training-javascript-reac-23131/005-saul-maddox-software-engineer-at-pros-shares-insights-about-his-ha-818816"> <img src="https://storage.googleapis.com/goodpods-images-bucket/badges/generic-badge-1.svg" alt="listen to 005 saul maddox, software engineer at pros, shares insights about his hapi-ninja boilerplate and its technology (node.js, hapijs web framework, swig, gulp) on goodpods" style="width: 225px" /> </a>
Copy