Using Angular with a “headless” Wagtail CMS

Wagtail is a great Django-based content management system. Angular is a full-featured JavaScript framework. I wanted to use them together, so I made some helper libraries. Below, I explain how I did it. Goals: Enable Wagtail features like preview and redirects. Allow routing to be defined (mostly) in Wagtail Maintain great performance through Lazy loading… Continue reading Using Angular with a “headless” Wagtail CMS

Review: Pixel Slate for Linux and Web Development

The Pixel Slate (i7 model) can be a decent computer for web development, including Docker, Node, and Android development. My workplace recently got me one so I decided to review it for anyone curious about using it for Linux-based development. Performance I’m reviewing the highest-end version with an i7-8500Y CPU. Let’s break that down: Y… Continue reading Review: Pixel Slate for Linux and Web Development

Forms with ngrx, NativeScript, and Angular

There are many ways to make forms in Angular. There’s template driven, reactive, and the question of syncing with ngrx state or keeping the it local to the component. When making a NativeScript app it’s not always obvious how to reuse these forms. For example, template driven forms in Angular might use the dom’s “required”… Continue reading Forms with ngrx, NativeScript, and Angular

Does your password manager really need permissions to do anything ever?

Almost all password manager’s browser extensions have permission to “Read and change all your data on the websites you visit”. If that sounds scary, it’s because it is. That’s the “<all_urls>” permission. It means the extension is allowed to execute arbitrary JavaScript at any time on any website without warning. Here’s some examples of what… Continue reading Does your password manager really need permissions to do anything ever?

Server side tracking with piwik and Django

Business owners want to track usage to gain insights on how users actually use their sites and apps. However tracking can raise privacy concerns, lead to poor site performance, and raises security concerns by inviting third party javascript to run. For Passit, an open source password manager, we wanted to track how people use our… Continue reading Server side tracking with piwik and Django

Using libsodium in Android and NativeScript.

LibsodiumĀ is a fantastic crypto library, however it’s documentation can be lacking. Libsodium supports many languages via native wrappers and javascript via asm.js. I’ll document here how I got it working in Android both in Java and NativeScript. The target audience is someone who knows web development but not Android development. Java + Android We’ll use… Continue reading Using libsodium in Android and NativeScript.

Building a continuous integration workflow with gitlab and openshift 3

In this post I’ll go over building and testing a Docker image with gitlab CI and then pushing that image to Openshift 3. It should be somewhat helpful for people using other Docker solutions like Kubernetes too or CI solutions like Jenkins. I’m using Django for the project with some front end assets built in… Continue reading Building a continuous integration workflow with gitlab and openshift 3