Christian Heilmann

Building a “shoutout” component in plain HTML/CSS/JavaScript

Wednesday, February 26th, 2025 at 11:15 am

Every Wednesday I host WeAreDevelopers Live on YouTube. Afterwards we cut out short videos to post on social media. What we needed was an obvious “shoutout moment” in the recording to indicate an interesting quote or when we moved on to the next topic – much like a clapper in classic movies to sync audio and video. To this end, I wrote some functionality to show a “cool” and “next” overlay that will make it easier in post production to find the interesting spots. Here’s what that looks like:

The shoutout component in action

You can try the functionality out yourself by checking this codepen, focusing on the browser part and pressing either the `[` or `]` key.
You can also watch the following video to get this article as a step-by-step explanation:

And there is a detailed explanation of the code on the WeAreDevelopers Magazine.

I just love how easy these things are nowadays in HTML, CSS and plain JavaScript.

Share on Mastodon (needs instance)

Share on BlueSky

Newsletter

Check out the Dev Digest Newsletter I write every week for WeAreDevelopers. Latest issues:

Don't stop thinking, AI Slop vs. OSS Security, rolling your own S3 Despite AI you still need to think, Bitter lessons from building AI products,  AI Slop vs. OSS security and pointer pointer…
200: Building for the web, what's left after rm -rf & 🌊🐴 vs AI What remains after you do a rm -rf? Why do LLMs know about a seahorse emoji? What image formats should you use? How private is your car?
Word is Doomed, Flawed LLM benchmarks, hard sorting and CSS mistakes Spot LLM benchmark flaws, learn why sorting is hard, how to run Doom in Word and how to say "no" like a manager.
30 years of JS, Browser AI, how attackers use GenAI, whistling code Learn how to use AI in your browser and not on the cloud, why AI makes different mistakes than humans and go and whistle up some code!
197: Dunning-Kruger steroids, state of cloud security, puppies>beer

My other work: