SaulMaddox-Photo

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
# after installing Node.js
git clone https://github.com/poeticninja/hapi-ninja.git
cd hapi-ninja
npm install
  • 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