ezBadge v2: Now in Stunning Javascript HD

| programming | software | javascript |

If you have ever wondered what it looked like to convert an application from Python to Javascript, you are in luck. After finishing ezbadgeyesterday, I came to the realization that the entire thing could and should have been written in Javascript. There is absolutely no reason for this thing to send any requests to a server in order to process the URL and render the markdown.

So, I did just that. Introducing, ezBadge v2 After removing all of the Flask, I was able to create two Javascript functions that essentially did the same thing as the Flask app was doing for me.  The added benefit is that other than serving the initial HTTP request, I do not have to handle any additional requests and the entire thing now runs in the browser.

This was a fun little exercise, and I think the Javascript version of this application is a bit more elegant. Rather than appending the template with Jinja as I was doing before, I am now spawning a modal (after doing some form validation) and then using the Marked library to render the preview of the badge markdown. I could have done all of the UI stuff with Flask without any issues, but the fact that the entire thing now runs in the browser saves bandwidth, computing resources, and time.

You can see the transformation for yourself in the ezBadge GitHub repo. In the next iteration of ezBadge I plan on adding more choices for the types of badges that you can make. If you have any suggestions please feel free to leave a comment here or open up a github issue.

Thank you for reading! Share your thoughts with me on bluesky, mastodon, or via email.

Check out some more stuff to read down below.

Most popular posts this month

Recent Favorite Blog Posts

This is a collection of the last 8 posts that I bookmarked.

Articles from blogs I follow around the net

Qwen 3.8 27B is excellent, but it defaults to wildly overthinking things

Friday's big release was Qwen 3.8 27B, an Apache 2 licensed 27B parameter vision-capable LLM from Alibaba's Qwen research lab. I've been looking forward to this one: 27B is an excellent size for running a model on a reasonably specced laptop, and its prede...

via Simon Willison's Weblog: Entries August 16, 2026

“I think there’s a lot of value in these.”

Speaking of user interface guidelines, developer Matt Sephton and others compiled many of Apple’s human interface guidelines, starting from 1980, all the way to 2014, including some goodies like early drafts, NeXT, Newton, and so on. Elsewhere, designer Ge...

via Unsung August 16, 2026

Birding photos from Dutch Gap on Aug 15, 2026

Birding photos from Dutch Gap on Aug 15, 2026 My best bird photo from this morning is a dragonfly (Eastern Pondhawk, I think). Least Sandpiper Green Heron Red-headed Woodpecker. It's a juvenile, so its head is not actually red yet.

via O'DonnellWeb August 16, 2026

Generated by openring