CodePen Radio

CodePen Radio

By CodePen BlogTechnology
Download on the App Store

CodePen Radio episodes

  • 412: 2.0 Embedded Pens

    Or just "Embeds" as we more frequently refer to them as. Stephen and Chris talk about the fairly meaty project which was re-writing our Embeds for a CodePen 2.0 world. No longer can we assume Pens are just one HTML, CSS, and JavaScript "file", so they needed a bit of a redesign, but doing as little as possible so that existing Embed Themes still work. This was plenty tricky as it was a re-write from Rails to Next.js, with everything needing to be Server-Side Rendered and as lightweight as possible (thank urql!).

    Time Jumps

    28 min
  • 411: The Power of Tree-Sitter

    Alex and Chris hop on the show to talk about a bit of technology that Alex calls "The 2nd best technological choice he's ever made." That technology is called Tree-sitter. It's a code parsing tool for building ASTs (Abstract Syntax Trees) out of code. GitHub uses it to power search and "go to" functionality. The creators now work on Zen, where a code parser is paramount. We use it to understand an entire Pen very quickly so we can understand how it all links together (among other things) and make a plan for how to process the Pen (a "build plan"). It's fast, accurate, forgiving, and extensible. Just a heck of a learning curve.

    Jump Links

    0 min
  • 410: Trying to help humans in an industry that is becoming increasingly non-human

    Chris & Marie jump on the podcast to talk about just how drastically customer support has changed over the last few years. We still exclusively do customer support over email. Incoming email from real customers who need a hand with something where they type out that email in plain languages themselves are few and far between. Instead we get an onslaught of noise from users that don't exist about Pens and situations that don't exist. The influence of agentic AI is massive here, some of it with nefarious intent and some not. All of it needs work to mitigate.

    Time Jumps

    0 min
  • 408: Proxied Third-Party JavaScript

    Chris and Stephen hop on the podcast to discuss the concept of a proxy. Possibly the most "gray hat" thing that CodePen does. We use a third-party analytics tool called Fullres. We could just put a link to the

    0 min
  • 407: Our Own CDN

    Robert and Chris jump on to talk about our little CDN project. Maybe that's not the right term, but we struggled with naming it. Truth be told, it's the /public/ folder in our monorepo, where the purpose is getting files to the world wide internet at URLs that anyone can access. Our favicon is a good example, where many of our sites need access to that, but we only want it once in our repo (but we have actually lots of use-cases.)

    There are several complications along the way. One is that we need to fingerprint these files so we can cache-bust them when needed. We also need to be able to import the URLs in other parts of the repo, so we need manifest files that contain those URLs in multiple formats. Plus many of the files have their own build process, they aren't just entirely static files. In the end, building our own thing was probably the right move.

    The files go to Cloudflare R2, which, I suppose, is the CDN part.

    Time Jumps
    45 min
  • 406: Hot Trends of 2025

    Marie and Chris jump on to discuss some of the trends of what people are building on CodePen here, approximately halfway through 2025.

    New CSS!
    • Custom @functions (just landed)
    • if() function
    • clip-path & shape()
    • corner-shape and the superellipse
    • Scrolling stuff
    • The attr() power up
    • Hot Styles
      • Liquid glass (Jhey's demo, Spark)
      • Hard glitch (CRT-like effect with VFX-JS, Glitchy button hover effect with VFX-JS, ❍ Cinematic Glitch Slideshow)
      • Holographics (CSS Holographic Masks)
      • Grainy textures (Grainy distorted interactive 1 gradient blobs)
      • Innovative blurs (wavy wobbly lava orb, Bubbles Background Animation)
      • New color spaces (OKLCH Swatch Example, CSS Color Functions, CSS oklch Gradation)
      • Hot Pens
        • Petr Knoll’s Glass Button (From February, well ahead of liquid glass)
        • Mike Bespalov’s Monospace ASCII art generator (known to be “vibe coded”)
        • Adam Kuhn’s Severance Lumon Macrodata Refinement
        • Steve Gardner’s “Who Needs Shaders”
        • Time Jumps

          44 min
        • 405: Elasticsearch → Postgres Search

          Alex & Chris get into a fairly recent technological change at CodePen where we ditched our Elasticsearch implementation for just using our own Postgres database for search. Sometimes choices like this are more about team expertise, dev environment practicalities, and complexity tradeoffs. We found this change to be much better for us, which matters! For the most part search is better and faster. Postgres is not nearly as fancy and capable as Elasticsearch, but we werent taking advantage of what Elasticsearch had to offer anyway.

          For the power users out there: it's true that we've lost the ability to do in-code search for now. But it's temporary and will be coming back in time.

          Time Jumps

          0 min
        • 404: Preventing Infinite Loops from Crashing the Browser

          Stephen and Chris hop on to talk about how we're saving everyone from crashed browser tabs in CodePen's 2.0 editor. One simple:

          Executing JavaScript can cause a browser tab to entirely lock up, preventing you from doing anything, like potentially saving your work. It can even crash other same-domain tabs. But not on our watch! CodePen is now using a "heartbeat" technique to report up from the preview iframe to the parent page, and if we don't hear the heartbeat, we can rip out the iframe and stop the crash. But it was very tricky to get working and not too jumpy.

          Fortunately, we got it all working, because our previous technique of instrumenting your JavaScript wasn't going to scale well to the 2.0 editor.

          Time Jumps

          23 min
        • 403: Privacy & Permissions

          Chris & Rachel hop on the show to talk about the expanded privacy (access) model in the 2.0 editor (in Private Beta as we speak). Private Pens have always been a big deal, but as private as they are, if someone has the URL, they have the URL, and it doesn't always feel very private. There are two new levels of privacy in the 2.0 editor: password protected and collaborators only. Passwords are an obvious choice we probably should have done long ago. With it, both the Pen in the editor itself, as well as the potentially deployed site are password protected.

          Our new permissions model is intertwined in this. Now you can invite others directly to be a fellow Editor or simply a Viewer to an otherwise private Pen. If you set the privacy level to "collaborators only", that's the most private a Pen can possibly be.

          Time Jumps

          33 min

        About CodePen Radio

        From the publisher's feed

        The CodePen team talk about the ins and outs of running a web software business.

        More shows like CodePen Radio

        The Joe Rogan Experience by Joe Rogan

        The Joe Rogan Experience

        227,498 Listeners

        Pivot by New York Magazine

        Pivot

        9,619 Listeners

        Syntax - Tasty Web Development Treats by Wes Bos & Scott Tolinski - Full Stack JavaScript Web Developers

        Syntax - Tasty Web Development Treats

        985 Listeners

        Darknet Diaries by Jack Rhysider

        Darknet Diaries

        8,059 Listeners

        Prof G Markets by Vox Media Podcast Network

        Prof G Markets

        1,450 Listeners