Blog Posts

Spring MVC with Pebble Templates

February 15, 2021

Spring, for the time being, is the biggest, fully-featured MVC framework for Kotlin. While it’s predominantly used for creating JSON API servers, you can leverage the fantastic and intuitive Pebble templating engine to rapidly build a full-stack app in Spring - here’s how!

Mixing in functionality with Interface Companion Objects in Kotlin

December 15, 2020

Much like Ruby’s mixins, Kotlin also bypasses the need for crazy inheritance chains and allows us a more flexible way to define behaviours on our classes by allowing interfaces to not just enforce, but also define the methods for our classes to use. Let’s do a Kotlin and take a look:

Default Drop-down Values using the Vue.js Data Layer

October 27, 2020

Vue.js is a powerful framework for giving users a dynamic, responsive experience in your web app. The edge it has over React is its ability to neatly slot into server-side rendered templates in a lean fashion as well as offer the VueCLI for ambitious single-page apps. However, the way it interacts with core HTML elements does have its quirks to be mindful of. When rendering a drop-down in HTML you can have a simple set of options with a default prompt to select one of them like so:

Running Alpas app Migrations on a free tier Heroku Server

June 17, 2020

So you have built an Alpas app and followed these steps to deploy to Heroku but you are having issues running migrations. These additional steps should help you run the migrations as well as any other Alpas task you need on Heroku, especially the free tier.

Node.js web apps with Express and Tailwind CSS

January 15, 2020

Javascript is currently blowing my mind at the moment with the sheer control you have to manipulate web pages in dynamic ways. Express is one of the most popular web frameworks and gives you the ability to do full-blown web development a la Ruby on Rails without the need to switch languages. Add in light-touch css framework Tailwind CSS and you can build sweet-looking websites really quickly.