Image for post
Image for post

Some time ago an acquaintance started a danish version of “Word a Week” on Twitter. She would every week tweet a word that she thought wasn’t used enough. It could be a real word or some old slang. I found it very funny and thought “Why isn’t there a site which lists them”. So long story short I started working on it and https://ugensord.dk was born (I got her permission first!).

The site is very simple. It uses Unsplash to show a background and then a simple black box in the middle with a word, its meaning, and sometimes a quote. …


Since that time the landscape have changed. New tools have arrived on the scene and Go finally have a modules system.

Getting those two to play nicely on CircleCI wasn’t a quick and easy thing for me to do. So I hope by sharing my raw config it can help others.

So what the config is doing is the default CircleCI stuff, like checking out the code. But look at the cache entries. They have been updated to match the new Golang modules cache path. Also it will use go.sum as its cache path. That way it will only be updated if go.sum


Before going further I suggest you read the other blog post which will explain the conventions behind the Rollup configuration.

Rollup Configuration

// rollup.config.js
import fs from 'fs'
import CloudFormation from 'yaml-cfn'
import typescript from 'rollup-plugin-typescript'
import nodeResolve from 'rollup-plugin-node-resolve'
const defaultConfig = {
plugins: [
nodeResolve(),
typescript(),
],
output: {
format: 'commonjs',
},
external: [
'aws-sdk',
],
}
const { Resources } = CloudFormation.yamlParse(fs.readFileSync('template.yml'))const entries = Object.values(Resources)
.filter(resource => resource.Type == 'AWS::Serverless::Function')
.filter(resource => resource.Properties.Runtime.startsWith('nodejs'))
.map(resource => {
const file = resource.Properties.Handler.split('.')[0]
const prefix = resource.Properties.CodeUri.substr(8) …


In this post I am going to try and explain how I set up my AWS Sam projects using Webpack and TypeScript.

The thought behind my approach is to make the CodeUri part of my template point to the Webpack output. Then have Webpack running in “watch” mode in order to recompile when i save a file. This adds the requirement of having Webpack running in the background, which is somewhat a pain. It also requires some manipulation of the entries file. …


Image for post
Image for post

Over the last decade I have started to travel more and more. When travelling a lot one of the constant problems is figuring out how to pay for stuff like food accommodation etc. Without paying millions in fees to your bank or Forex companies. So I was pretty happy when I found out about the new breed of FinTech companies and found Revolut.

What is Revolut?

Revolut is officially an Electronic Money Institution regulated by the FTC in the UK. But really it is an Awesome app for travelling and Forex. Here is a short list that makes it so awesome for travel:

  • Interbank Exchange…

Fortunately Electron gives us access to ipcRenderer and ipcMain which together with a simple preload script makes this quite easy.

So let’s start with a simple Electron app. This will open https://google.com and use our preload script.

When we receive an event on the postMessage channel we will just use console.log to log some output. If open-url is then triggered we will send a message to the renderer process for our mainWindow.

About

Henrik Bjørnskov

I build stuff at Relatel A/S, vivid traveller and gear junkie.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store