Hugo
codewithhugo.com
Hugo
@codewithhugo.com
Senior Developer - Building alpinedevtools.com
Wrote jesthandbook.com + ×3 books with Packt. Thoughts at codewithhugo.com
One of those productivity/flow tips is to leave something half done so you can get going the next time

LLMs/agents give you that in the cases where they don't one-shot your request.

Even just firing up the dev server and testing the output still gets you closer to flow even in the one shot case.
August 31, 2025 at 8:55 PM
Arguing with an LLM about whether I want to call Alpine.js devtools seamless or effortless
August 23, 2025 at 11:48 AM
Fed a repro into a coding agent (Jules) and it actually fixed the underlying bug

Can we make a plan to solve it but in a way that i can take over from Jules if you cant solve it? (So probably include a reproduction, make sure it fails eg. automation tests, submit that code, then try to fix it)
August 19, 2025 at 2:13 PM
Reposted by Hugo
The AWS News Feed is currently without funding 😢 Meanwhile development of new features continues, the site's numbers are consistently growing, and with the pre:Invent season about to fire up we expect only more visitors and subscribers in the coming months! Will you become a sponsor? Send me a DM!
August 18, 2025 at 12:31 PM
Started using jules.google.com

Async development agent, you grant it access to GitHub repositories, it clones them in a VM and runs tasks (including scripts etc).

Not bad for small tasks, stubbing/poc attempts or while on the go (slow to type code on mobile).
August 7, 2025 at 10:24 AM
I'm reviving my newsletter, have ~2 months of content scheduled.

Subscribe if you think this content might interest you.

buttondown.com/hugo/
August 1, 2025 at 7:37 PM
Reposted by Hugo
Big news! I'm available for hire! If you have JavaScript/TypeScript you want written, and you have budget for an ambitious and highly skilled practitioner with over 20 years of experience doing that, including leading teams, communities, and execs, hit me up.
izs.me
(RT please)
Isaac Z. Schlueter
izs.me
July 31, 2025 at 5:45 PM
I've aggregated some more advanced/non-obvioud TypeScript patterns in this new posts

codewithhugo.com/typescript-t...
TypeScript in the Trenches: Utility types and type manipulation patterns for application development · Code with Hugo
<p>7 advanced types and patterns that I&rsquo;ve used as part of TypeScript application development.</p> <p>These patterns help unlock new levels of type safety
codewithhugo.com
July 29, 2025 at 1:18 PM
Was struggling to find a free product screenshot generator for Alpine Devtools Chrome extension

For the Chrome Webstore you need to capture 1280x800 and I'm just not that accurate with drag and drop

screenshot.rocks seems to do the basics of what I need (browser frame config, padding/background)
Screenshot.Rocks | Create beautiful mobile or browser screenshots and mockups
Create mobile or browser mockups from screenshots in seconds. Screenshot.rocks turns ordinary browser screenshots into beautiful mockups
screenshot.rocks
May 11, 2025 at 11:51 AM
Interesting concept of a minimalist blog

ostwilkens.se/blog/setting...

To be honest for alpinedevtools.com/updates

I went even further: use .md files and generate the HTML using the VSCode Markdown All In One plugin.
May 3, 2025 at 3:56 PM
Funny story

I keep hitting this "I want to select elements where attr starts with *prefix*"

Eg. Detect HTMX I need hx-* or data-hx-*
Yeah so I didn't want to borrow the v-bind/x-bind shorthand because I explicitly am not doing a reactive binding

Re why it's `data-s-attr="attrName=contextValue"`
1. The querySelectorAll is simpler (select for data-s-attr), I'm not even sure how I would use querySelect for "attrs starting with :"
April 15, 2025 at 7:39 AM
I'm not one to admit when I'm being stubborn

But working on the Alpine Devtools in the evenings means I finally felt the "why no dark mode" pain

This vindicates the time I spent wiring Tailwind (v4) properly the other day (devtools v1 is on Tailwind 1)
April 15, 2025 at 7:31 AM
Live/(re)launched alpinedevtools.com

Over the past few weeks.
Alpine Devtools
Alpine.js devtools is a Chrome extension for the Alpine.js JavaScript library. It allows you to detect, inspect and edit Alpine.js data and components in the Chrome Developer Tools.
alpinedevtools.com
April 12, 2025 at 12:58 PM
One of the first times I've ever been bitten by Big O

```
data.map((d) => {
prevState = oldData.reduce()
})
```

When data and oldData are ~10k entries, you're doing a 100 million iterations.

Move the reduce out of the loop (.map here) and you're doing 20k...
April 2, 2025 at 12:11 PM
No build Tailwind

- use `@tailwindcss/browser` via CDN (but only on local) in your app
- run `copy(document.querySelector('style').innerText)` (depending on whether you've got other styles you might need to mess with the selector)
- paste into your .css file
March 28, 2025 at 5:43 PM
Trying something new (or maybe reviving an old project)

I was part of the original crew that worked on Alpine devtools.

Chrome has obsoleted the extension (granted, it has had no updates since Sept 24) with Manifest v3
March 27, 2025 at 8:36 AM
Using Windows as a dev machine (temporarily) professionally for the first time after ~ a decade of being on Mac

I started leaning into the IDE to run things, shell is just a minefield with backslash in paths, slow and bad auto complete

Keyboard navigation muscle memory for VSCode letting me down
January 16, 2025 at 4:07 PM
MacBook Air M1 -> remote desktop via Citrix
I guess will sip battery?
January 10, 2025 at 10:38 AM
Been trying to get my first newsletter issue in a while sent out, more on that at the end of the thread

A lot has happened since I was regularly sending this out. I'm intending for it to still a place to learn about JavaScript/TypeScript and Node.js in the real world.
December 2, 2024 at 8:58 PM
Been playing with simple web components recently for some codewithhugo.com pages

Found it a bit painful to do templating (`.innerHTML` or `.appendChild` friendly options)

Open sourced 2 utils that I couldn't find a lightweight existing package for (`lit-html` seems heavy handed in this case)
Code with Hugo
Node.js and JavaScript Guides - Build your web platform with modern best-practices & tools
codewithhugo.com
December 1, 2024 at 3:14 PM
An example of Hyrum's law in JavaScript I encountered this week (or is it?)

A `divide(numA, numB)` function implemented partial application `if (numB == null) return n => divide(numA, n)`
November 21, 2024 at 8:49 AM