As part of this month’s newsletter, we wanted to try something different. We got to talk to talk to @ivorjetski, the creator of the “CSS Backrooms” demo featured below, and asked him some questions about himself, his demos, and life in general. Read the answers at the bottom of the article.
Pure CSS 3D Creation of Adam
Amazing 3D work by Julia Miocene. The precision of the movements, the positioning of every single piece, the animation… Really impressive. Beware: this demo may not place nicely with all computers.
Sortable Cards
A really smooth drag-and-drop feature with cards: blur effects, micro-interactions, and even sound —which normally I would object to, but it fits great in this demo. A great demo by TurboKit.
Star Geometry
Wakana Y.K. crafted a colorful (and interactive) study of stars from 4 to 8 points (there were a few, all equally good). It never stops amazing me what people can create with ThreeJS and a few lines of JavaScript.
Overthinker
As part of the squiggles CodePen challenge, Zerde Turdybek combined lines in a canvas with SVG to create a thought-provoking animation. The vibration in the lines takes this demo one step beyond.
Squiggly Worm
As part of the same squiggles CodePen challenge, ccprog brings some generative art: a purple worm/thread that moves around a hive randomly (within a set of rules) ad infinitum or until it breaks one of the rules and then it restarts.
CSS Day 2025 Speakers
Do you want to see the latest CSS in action? Check out this demo by Temani Afif! It has everything: @property, sibling selectors (not the + combinator), clipping with shape(), @starting-style… there’s nothing not cool about this demo. Note: it works better on Chrome, but the fallback on Safari and Firefox is pretty neat too.
Liquid Glass Switcher CSS
Apple created a commotion with the liquid glass effect, developers jumped to the challenge of recreating it, and some, like Vadim Matveev were able to recreate it with HTML and CSS (+ some inline SVG filters). The effect is stunning and simple. Really impressive work.
Select all items in the last row when using repeat(auto-fit/fill) with Grid
This demo describes a nifty trick to select all the elements in the last row of a grid container. Kevin Powell added detailed comments in the CSS code to help understand the concept and how it works. Thanks!
cat chat
Masahito Leo Takeuchi created a demo the brings memories of a time when the Internet was more for fun and cool and silly (in a good way) projects. Join the cat chat, and enjoy a meowgical conversation.
The Backrooms: CSS Edition
This demo by Ben Evans has a creepy atmosphere: dimmed lights, strange noises, shadows moving around… then you start digging in the code and notice that it’s all HTML and CSS, not a single line of JavaScript, and start feeling even more chills. Recommendation: explore this maze but, whatever you do, do not toggle the switch… or do 😉
A Talk with Ben Evans
Ben is an incredibly talented developer who has mastered the art of CSS, using it to craft stunning visual art and interactive experiences. His realistic, code-only drawings are both impressive and mind-blowing. Be sure to check out his CodePen profile to explore more of his remarkable creations.
And without further ado, here’s our interview with Ben:
Most people know you through your work in web development and your CSS creations—but how would you describe Ben Evans?
Hehe, great interview question! I’ve been writing a 3rd-person blog for a while, so I should be good at this! Ben Evans is a total geek who used to pretend he wasn’t but now has fully accepted that he is. He loves sci-fi, art, music, coding, and exploring every corner of humanity.
CSS Backrooms is really impressive and runs surprisingly smoothly considering the amount of HTML and CSS. What was the most challenging technical hurdle you faced while building it?
My previous 3D maze had a problem with iPhone, and I wanted to fix that this time, so I spent a ridiculous amount of time removing parts of the 3D landscape that are not in view. As it’s just CSS, the view doesn’t actually relate to where you are on the grid, so I had to come up with some code to work that out. And I’m not great at math, so this took some time, but I did it 🥳 I removed everything behind the position and three grid spaces either side. I don’t actually know if this helps, but it seems to. I also tried not to use box-shadow too much because that heavily affects performance.
You mention having issues with Safari—how did you work around them to ensure cross-browser compatibility?
It mainly ended up being guesswork and keeping things simple. I was using Browserstack to begin with, but my trial ran out. I don’t have a Mac or anything Apple, so I asked a few friends to take a look. It seems to run okay on newer iPhones, but I think it kills older ones. I think it might kill Intel-based Macs too! 😬
How long does it typically take to build a demo like CSS Backrooms, from design to implementation to release?
The Backrooms took seven months 😅 and this was based on a previous project that I had been working on for about a year previously—on and off. But this is just a hobby, so I don’t spend every hour of every day on them. It can be as little as an hour a week, just whenever I have some free time and feel like coding. Although it is my favorite hobby, so I usually do a little bit most evenings.
How do you know when a project is truly “done”? Or is it never really done? Would you change or add anything to CSS Backrooms today?
Some projects have a natural end, but CSS Backrooms, or building first-person games, could go on indefinitely. I’ve recently started adding view bobbing and more of a shaky camera to it, and there are a few other things I would like to improve. For example, I don’t think it’s very nice to play on mobile at the moment, and I am wondering if I can link the controls to the keyboard on PC. But I am reaching the limits of what fits on CodePen, so that could be the natural endpoint 🙂
How do you handle creative blocks or technical challenges when something isn’t working in CSS?
That’s easy! Time! I go and do something else for a while. The problem will just sit in some corner of my brain, and as I do other things, it magically gets processed in the background, and like when a microwave is done, ping, my subconscious has come up with a solution! 🤓 This isn’t unique to me; I’ve heard other people say they ‘lean on ideas.’ It just takes the pressure off, I guess.
What originally drew you to CSS as a medium for creating art? Was it code first, then creativity—or the other way around?
It was complete laziness 😅 I struggled with which art form to study, until eventually settling for illustration. But then after uni, I fell in love with web design because it also fulfilled my sculpting side, as using code to design is a bit like sculpting—you have to visualize the end goal and chip away at it. But anyway, I wanted to illustrate a website and couldn’t be bothered to find a pen and paper, or pay for an SVG editor. I already had Visual Studio open, so it just made sense to move boxes around with CSS to create images 🙂
Realistic CSS images, music videos, games… where do you think the limit is for what CSS can do?
The amount CSS can do seems to be growing faster than ever at the moment, so I’m not sure there is a limit. I mean, there is a limit to what CSS should sensibly be used for; making games and art in CSS probably isn’t very sensible. But it’s a great way of learning and a fun hobby, so why not 🙂 I’m looking forward to exploring all the new things more, like if(). Surely if we now have if() available, then we can start making CSS decision engines!
Many see CSS as “just a design language,” but your demos challenge that idea. How do you see CSS and its broader potential?
Well, at the end of the day, it is just for improving the look of HTML. And I think it should probably just stick to doing that. But there is no limit on how creative people should get with user interfaces. Personally, I think operating systems and native apps should be built using web technologies, like Firefox and Google have both tried to do.
How do people typically react when you share your CSS-only demos? What kind of feedback have you received?
Hehe, I am too humble to list all the lovely things people say, but I do usually aim to shock, so ‘wow’ is the common theme 🙂 Strangely, what I crave the most is for people to comment on the music on my YouTube videos. I enjoy writing those tracks in my spare time; some of them are quite bad 😂
You recently ran a workshop with artists creating CSS-based visual pieces. What was that experience like? Do you think this idea could catch on in other institutions?
That was an amazing experience, and exhausting! 😅 I had two days to teach a few people what CSS could do and how to draw in it. They had the tricky task of each creating an art installation to go on display the following week! 😮 They all did an amazing job, and their work has been on display for a few months now. It’s definitely a good and intense way of learning CSS. And I really like the idea that this online art form can cross over into being displayed at galleries.
If someone gave you unlimited time and no performance constraints, what would you build using only CSS?
I have a list of ideas! 😅 But I’m currently on a kind of retro game trend. I was trying to make Snake, but that got pushed aside when I thought of the Backrooms. I might go back to that next. But ultimately, I would love to make something truly original. I think it will happen once I’ve learned enough from making these retro games.
What’s the most surprising or memorable feedback you’ve received—from a viewer, designer, or fellow developer?
I love Kevin Powell‘s reaction videos. The one I remember the most wasn’t even words, just his expression 🙂 Also, when Hui Jing Chen introduced me on stage as ‘The Da-Vinci of CSS,’ I was rather gobsmacked by that. Leonardo da Vinci is a hero of mine.
If you could collaborate with any developer or artist on your next project, who would it be—and why?
Pretty much anyone in the front-end community! They are all such lovely people! I did a kind of collab video once, where people made furniture for a room; that was a lot of fun. I keep meaning to do another one of those videos. I do have an idea for one…
What advice would you give to developers who want to push the boundaries of HTML and CSS to create art, games, or experimental experiences?
Do it! It’s great fun and a cool way to learn 🙂 Think of something random that you have no idea how to build, and then try and build it. It might not end up like what you originally intended, but you will end up with something amazing.
…and now, we some “flash questions”…
Coffee or tea?
Tea, I’m a tea-o-holic!
Early bird or night owl?
Night owl! I’m usually up until about 2am coding!
Windows or Mac?
Never owned a Mac, but I am tempted now that they use Arm.
CSS or Tailwind?
I LOVE UTILITY CLASSES! 🤩😂
Dark mode or light mode?
Dark mode for everything!
Spaces or Tabs?
Don’t mind. I originally used to code without either because I thought it looked neater 😅
Coding in silence or with music?
Definitely music, and whatever the algorithm throws at me!
Favorite IDE?
Visual Studio is my happy place 🙂
A developer to follow…
@comicss.art of course! But they probably already do that to be reading this, so… Lynn Fisher, Adam Kuhn. Ah, there are loads; I should create a starter pack on Bluesky!
Describe your code with one emoji…
🙃
That was our talk with Ben Evans, I hope you enjoyed reading it as much as we did. You can find Ben on social media:
CodePen,
LinkedIn,
DEV,
Bluesky, and
Instagram.