---
title: "Marty Penner (@martypenner) | Hashnode"
description: "Code, creativity, and improv: navigating the unexpected. Read the latest articles by Marty Penner on Hashnode."
url: "https://hashnode.com/@martypenner"
---

@martypenner

# Marty Penner

@martypenner · Joined February 2024

Code, creativity, and improv: navigating the unexpected.

[Website](https://penner.me/)

### [Generating TLS certificates for external domains in SST](https://penner.me/generating-tls-certificates-for-external-domains-in-sst?utm_source=hashnode&utm_medium=feed)

You know how sometimes, you can spend hours and hours debugging something, only to discover the fix is a few lines of code? That's what creating certificates in sst.dev was like. I kept forgetting that SST wraps AWS Cloud Development Kit (CDK), and t...

2 min read · [penner.me](https://penner.me/generating-tls-certificates-for-external-domains-in-sst?utm_source=hashnode&utm_medium=feed)

[Jan 29, 2024](https://hashnode.com/posts/generating-tls-certificates-for-external-domains-in-sst/65bd27381934806e0700b7a9)

### [Getting Tauri working in WSL](https://penner.me/getting-tauri-working-in-wsl?utm_source=hashnode&utm_medium=feed)

Update: Tauri has good guidelines for working with homebrew and a clear set of prerequisites for linux. Not sure if I missed these before or they were added later, but those docs basically describe how to avoid the installation problems I ran into. ...

3 min read · [penner.me](https://penner.me/getting-tauri-working-in-wsl?utm_source=hashnode&utm_medium=feed)

[1](https://hashnode.com/posts/getting-tauri-working-in-wsl/65bd2c4ea7549bd42481e110) [Oct 25, 2022](https://hashnode.com/posts/getting-tauri-working-in-wsl/65bd2c4ea7549bd42481e110)

### [Sharing music with friends using fly.io, Azuracast, and Mopidy](https://penner.me/sharing-music-with-friends-using-flyio-azuracast-and-mopidy?utm_source=hashnode&utm_medium=feed)

TL;DR: Use Mopidy with Iris + Azuracast to live stream your music for cheap on fly.io. Here's the repo with my deployments. Feel free to fork and follow the instructions to have a self-hosted music and streaming service up and running quickly. In my...

3 min read · [penner.me](https://penner.me/sharing-music-with-friends-using-flyio-azuracast-and-mopidy?utm_source=hashnode&utm_medium=feed)

[Sep 26, 2022](https://hashnode.com/posts/sharing-music-with-friends-using-flyio-azuracast-and-mopidy/65bd2b4d04e26c1560a79f4b)

### [Using NVM to enforce node versions](https://penner.me/using-nvm-to-enforce-node-versions?utm_source=hashnode&utm_medium=feed)

At work, we previously used docker to give us a common node version by running every node and npm command through a wrapper script. This meant we wouldn't run into strange gotchas between different versions of node and npm. But it also created more p...

2 min read · [penner.me](https://penner.me/using-nvm-to-enforce-node-versions?utm_source=hashnode&utm_medium=feed)

[Feb 5, 2020](https://hashnode.com/posts/using-nvm-to-enforce-node-versions/65bd2bccf6cc0b42ff6972e7)

### [Manipulating SVGs using CSS](https://penner.me/manipulating-svgs-using-css?utm_source=hashnode&utm_medium=feed)

At Race Roster, I've been experimenting with using SVGs to show real-time theme updates as a user changes the theme colours in their branding settings. A more traditional approach would require using a set of <div> and <span> elements with border or ...

1 min read · [penner.me](https://penner.me/manipulating-svgs-using-css?utm_source=hashnode&utm_medium=feed)

[Mar 24, 2019](https://hashnode.com/posts/manipulating-svgs-using-css/65bd2cdf1f04e2b8abfeb4a9)
