ATProto Browser

ATProto Browser

Experimental browser for the Atmosphere

Post

WebGL shaders don’t natively integrate with CSS—but what if they did? Here's a quick post where I show how to dynamically update shader colors based on CSS properties. This means real-time theme updates, dark mode support, and even transitions! Read here: www.nmattia.com/posts/2025-0...

Jan 29, 2025, 9:52 AM

Record data

{
  "uri": "at://did:plc:fll26nbvvyfm6ion7tj2sbjc/app.bsky.feed.post/3lgup3pc5dk2v",
  "cid": "bafyreiarwjbj3y4zettqukehhbx45qz3zbotryfwjrviusldqddtigwkhe",
  "value": {
    "text": "WebGL shaders don’t natively integrate with CSS—but what if they did? \n\nHere's a quick post where I show how to dynamically update shader colors based on CSS properties. This means real-time theme updates, dark mode support, and even transitions!\n\nRead here: www.nmattia.com/posts/2025-0...",
    "$type": "app.bsky.feed.post",
    "embed": {
      "$type": "app.bsky.embed.video",
      "video": {
        "$type": "blob",
        "ref": {
          "$link": "bafkreiar36rwvroxagpimyncus5o5v33e3fasct6m5vlja3h42fvqyzndm"
        },
        "mimeType": "video/mp4",
        "size": 1698167
      },
      "aspectRatio": {
        "width": 1314,
        "height": 1486
      }
    },
    "langs": [
      "en"
    ],
    "facets": [
      {
        "index": {
          "byteEnd": 294,
          "byteStart": 263
        },
        "features": [
          {
            "uri": "https://www.nmattia.com/posts/2025-01-29-shader-css-properties/",
            "$type": "app.bsky.richtext.facet#link"
          }
        ]
      }
    ],
    "createdAt": "2025-01-29T09:52:09.500Z"
  }
}