Episode 7 – Serving Content in Koajs with Swig

Author: James Moore

In this episode we'll look at serving content from Koajs with Swig: a fast, extensible and popular templating language available in node.js and in the browser.

This is the second episode in a three part series on serving content from Koajs.  In the first episode we looked at Jade, an excellent , unique and popular templating language.  This week we'll contrast Jade with a more more conventional choice: Swig.

Swig can be appealing for several reasons:

  • It simply intermixes the templating syntax with html, which makes for a smaller learning curve when compared to Jade.
  • It's one of the fastest templating engines available in node.js. So if you can't stand the thought of using anything but the fastest engine, swig may be for you.
  • It offers simple extensibility so adding functionality is a breeze

We'll continue to explore and learn by creating tests, which provides an excellent way to validate our assumptions, expectations and understanding.

We're going to focus on using swig in the context of a Koajs application, so well setup our tests to call a Koajs application that will render our swig templates and return the resulting html.

Next we'll look at a significant portion of the features available in swig by creating a series of tests.

Lastly we'll extend swigs functionality, creating a couple of custom filters such as pluralize.

Stay tuned for the next episode, where we look at Marko a new and interesting templating language that provides some interesting features and performance characteristics.

Source for this episode is available at: https://github.com/knowthen/episode-7-serving-content-in-koajs-with-swig

Free Courses

Functional Concepts in JavaScript with Ramda

What's Ramda?

In this free mini-course, you'll learn about functional programming concepts like: map, filter, reduce, curry and function composition.

This is a great course for dipping your toes into Functional Programming.

Price:Free ($0)
Sign Up

Elm for Beginners

What's Elm, and why should I care?

It's an amazing language for writing web apps which have no runtime exceptions.

I'm pretty sure learning Elm will change the way you program And It's Free!

Price:Free ($0)
Sign Up