Terrazzo: tools for token management and code generation
Design systems for everyone. MIT Licensed tools for developing and managing design systems. Use the W3C design token format to build multi-platform apps quickly and easily.
I've been learning about terrazzo.app, today, the design tokens tool.
@pow.rs and Nick Tassone, your documentation is an absolute delight to read!! It's just telling you bluntly how to use all of the features; it puts them all in context.
And I love your implementation of DTCG Resolvers!
06.03.2026 17:21
👍 3
🔁 0
💬 0
📌 0
Black and white photo of me smiling at a pub that came out of a Polaroid. The paper is almost rolled up.
I thought it was the paparazzi at first but got a nice photo taken by @matuzo.at at #SotB26!
02.03.2026 12:34
👍 10
🔁 0
💬 0
📌 0
Bruce Lawson's personal site
» On Apple’s pinky promises to CMA
Here's the consultation i mentioned at #sotb26 I'm not kidding when I told you that the regularlors love to hear from developers rather than lobbyists. Doesn't need to be structured relost. They simply way to your view. https://brucelawson.co.uk/2026/on-apples-pinky-promises-to-cma/
28.02.2026 21:44
👍 8
🔁 9
💬 0
📌 1
Now that I can look more closely... yeah that actually is a good photo haha. The photo is yours! Do whatever you want with it. 😃
01.03.2026 10:23
👍 2
🔁 0
💬 0
📌 0
Now come every year!
01.03.2026 10:19
👍 0
🔁 0
💬 1
📌 0
No no no it's all over! The Temporal API has dictated that it is now 5pm and we must head to the pub.
So grateful for this wonderful conference. Where would I be without this conference. I'm so grateful for it. Thank you Dave and the team! #SotB26
28.02.2026 17:27
👍 5
🔁 0
💬 0
📌 0
We have just voted what enemy to add to the game. We've added AI. 😂
Every time a person uses Claude, the sky now rains tech debt which you have to avoid. 😂 #SotB26
28.02.2026 16:45
👍 2
🔁 0
💬 0
📌 0
To create an animation of a character idling and running, we can make a sprite sheet and use the step function to jump between each image as part of an animation. #SotB26
28.02.2026 16:39
👍 0
🔁 0
💬 1
📌 0
It uses the GSAP ticker to give a heartbeat, as it were, to the animations. #SotB26
28.02.2026 16:34
👍 1
🔁 0
💬 1
📌 0
Cassie sits down to make a game and gives the canvas element a go. There's a rectangular person who can move around. They can jump and fall off the world and die and respawn! #SotB26
28.02.2026 16:30
👍 1
🔁 0
💬 1
📌 0
Cassie is wondering what to talk about. Jeremy Keith would always say a talk should have a narrative.
She was procrastinating playing Dave the Driver and realised that games are just animations with a narrative structure! 😂
So this is going to be a very interactive talk. #SotB26
28.02.2026 16:28
👍 0
🔁 0
💬 1
📌 0
Finally we have @cassiecodes.bsky.social who will give us some animation delight with GSAP.
We go on the Way back Machine and laugh at an old guest article on their website saying 'HTML5 is certainly not a flash killer'. 😂 #SotB26
28.02.2026 16:25
👍 0
🔁 0
💬 1
📌 0
All of the other performance optimisation techniques out there they didn't really need because everything fit in 128 KB!
Performance helps with accessibility, and low socioeconomic backgrounds with cheap and slow devices.
They made something that worked better for everyone. #SotB26
28.02.2026 15:57
👍 1
🔁 1
💬 0
📌 0
Ah ha! Thank you for clarifying!
28.02.2026 15:52
👍 3
🔁 0
💬 0
📌 0
So they got their images, CSS and JS as small as they could.
Could they minify their HTML? They only used line break characters, removed comments, removed whitespace.
But IE didn't like the code all being on one line so they put a new line in first attribute of each element. #SotB26
28.02.2026 15:50
👍 0
🔁 2
💬 1
📌 1
They'd also embraced SVGs and used SVGO to compress them. But they'd also mess with the SVGs themselves to see what they could remove without changing how it looked. #SotB26
28.02.2026 15:45
👍 0
🔁 1
💬 1
📌 0
They realised most of the page size would come from the images, so they'd use TinyPNG. And for JPEG images, they'd double the size of the image and then massively reduce the quality and it's not noticeable. #SotB26
28.02.2026 15:42
👍 0
🔁 1
💬 1
📌 0
To load a new page on browsers that could run client side JS, they just requested the content of the main area of the page but not the header and footer. Opera Mini just did a normal page load. #SotB26
28.02.2026 15:39
👍 0
🔁 1
💬 1
📌 0
That kind of page size budget meant they couldn't use any framework. All of them would blow the budget with just the library that powers it.
They made their own library called Whizz. It just did what they needed. #SotB26
28.02.2026 15:37
👍 0
🔁 1
💬 1
📌 0
And all pages with a cold cache needed to not be over 128KB because this was what you could load reasonably quickly on a 2G GPRS connection.
So no web fonts, etc. #SotB26
28.02.2026 15:33
👍 0
🔁 1
💬 1
📌 0
They had to use progressive enhancement because Opera Mini did not run client side JS. #SotB26
28.02.2026 15:32
👍 0
🔁 1
💬 1
📌 0
40% of their users were on these feature phone devices. They used Opera Mini.
So they had rules. They had to support responsive design. Normally you're thinking about 320px wide screens, not 240px. And they also couldn't make desktop second class. #SotB26
28.02.2026 15:30
👍 0
🔁 1
💬 1
📌 0
Next we have @mikehall314.bsky.social.
He had to build for a client (who he can't name) who were based in a country with not good infrastructure and they also requested a website that will work on feature phones. No WiFi support and often no 3G support. #SotB26
28.02.2026 15:28
👍 2
🔁 2
💬 1
📌 0
So that's it! What incredible work. The spec will go into stage 4 on 10th March!! 🎉 #SotB26
28.02.2026 15:25
👍 2
🔁 0
💬 0
📌 0
This was the first Rust library implemented in V8. They finally passed all of the Temporal tests this year in January! So they have full support.
So it's now out on Firebox and Chromium and it's coming to Safari and Node 26. #SotB26
28.02.2026 15:22
👍 2
🔁 1
💬 1
📌 0
Someone called Amber had been going along as the standard was worked on to implement it in Firefox. And Boa partnered up with the V8 team in chromium to work together on their implementations. Boa implements it in Rust which they shared with V8. #SotB26
28.02.2026 15:18
👍 3
🔁 0
💬 3
📌 0
This was a huge implementation for the browser JavaScript engines. It was the biggest addition to JavaScript since ECMAScript 6.
It's got over 4500. Far more than any other JavaScript feature. It is huge. #SotB26
28.02.2026 15:15
👍 2
🔁 0
💬 1
📌 0
The date times all map back to an ISO 8601 formatted date. It can be broken down into all of the Temporal objects. However, they can't represent timezones so the team went to standardise timezones on ISO dates with the IETF and they succeeded!! (This got applause) #SotB26
28.02.2026 15:12
👍 2
🔁 0
💬 1
📌 0
Then there's Temporal.Duration for just durations of time.
Why are they called PlainDates, etc? They didn't want people to assume that's the class they should always use. #SotB26
28.02.2026 15:07
👍 2
🔁 0
💬 1
📌 0
There are also ways of showing partial dates or times. It's very easy to increment hours or minutes or days or whatever to a date. #SotB26
28.02.2026 15:04
👍 2
🔁 0
💬 1
📌 0