Zell Liew
@zellwk.bsky.social
Blogging at zellwk.com.
Courses at magicaldevschool.com
Building splendidlabz.com
Constantly working on being the best version of myself.
Courses at magicaldevschool.com
Building splendidlabz.com
Constantly working on being the best version of myself.
Pinned
Zell Liew
@zellwk.bsky.social
· Apr 22
Unorthodox Tailwind | Magical Dev School
We help people become amazing developers who can build anything they can imagine.
magicaldevschool.com
Making a new course — Unorthodox Tailwind.
This one shows you how to use Tailwind and CSS in synergistic ways.
Just like life, dogmatic extremes (TW only, CSS only) rarely work well. Why not embrace what we have and enjoy them all?
magicaldevschool.com/courses/unor...
This one shows you how to use Tailwind and CSS in synergistic ways.
Just like life, dogmatic extremes (TW only, CSS only) rarely work well. Why not embrace what we have and enjoy them all?
magicaldevschool.com/courses/unor...
Reposted by Zell Liew
Love how @zellwk.bsky.social goes down a rabbit hole on CSS composition:
1. CSS is composable by nature.
2. You can do composition in HTML or in CSS.
...and ultimately:
3. Styles can be divided into four categories: layouts, typography, theming, and effects.
css-tricks.com/composition-...
1. CSS is composable by nature.
2. You can do composition in HTML or in CSS.
...and ultimately:
3. Styles can be divided into four categories: layouts, typography, theming, and effects.
css-tricks.com/composition-...
Composition in CSS | CSS-Tricks
CSS is a composable language by nature. This composition nature is already built into the cascade. We simply don't talk about composition as a Big Thing because it's the nature of the language.
css-tricks.com
September 8, 2025 at 1:57 PM
Love how @zellwk.bsky.social goes down a rabbit hole on CSS composition:
1. CSS is composable by nature.
2. You can do composition in HTML or in CSS.
...and ultimately:
3. Styles can be divided into four categories: layouts, typography, theming, and effects.
css-tricks.com/composition-...
1. CSS is composable by nature.
2. You can do composition in HTML or in CSS.
...and ultimately:
3. Styles can be divided into four categories: layouts, typography, theming, and effects.
css-tricks.com/composition-...
Kids don’t listen to you until you can open your heart to them and with them.
And they still won’t listen to you.
But maybe they will allow you to accompany them to do what you want them to do. (Like Homework, for example).
And they still won’t listen to you.
But maybe they will allow you to accompany them to do what you want them to do. (Like Homework, for example).
August 1, 2025 at 5:49 PM
Kids don’t listen to you until you can open your heart to them and with them.
And they still won’t listen to you.
But maybe they will allow you to accompany them to do what you want them to do. (Like Homework, for example).
And they still won’t listen to you.
But maybe they will allow you to accompany them to do what you want them to do. (Like Homework, for example).
Be present in this moment vs planning and working out the future.
What to choose?
Be present now as you work out the future.
What to choose?
Be present now as you work out the future.
July 31, 2025 at 3:14 PM
Be present in this moment vs planning and working out the future.
What to choose?
Be present now as you work out the future.
What to choose?
Be present now as you work out the future.
Reposted by Zell Liew
A Primer on Focus Trapping, by @zellwk.bsky.social (@[email protected]):
https://css-tricks.com/a-primer-on-focus-trapping/
#introductions #focus #keyboardnavigation #javascript #accessibility
https://css-tricks.com/a-primer-on-focus-trapping/
#introductions #focus #keyboardnavigation #javascript #accessibility
A Primer on Focus Trapping | CSS-Tricks
Focus trapping is about managing focus within an element, such that focus always stays within it. The whole process sounds simple in theory, but it can quite difficult to build in practice, mostly because of the numerous parts to you got to manage.
css-tricks.com
July 30, 2025 at 7:28 PM
A Primer on Focus Trapping, by @zellwk.bsky.social (@[email protected]):
https://css-tricks.com/a-primer-on-focus-trapping/
#introductions #focus #keyboardnavigation #javascript #accessibility
https://css-tricks.com/a-primer-on-focus-trapping/
#introductions #focus #keyboardnavigation #javascript #accessibility
What is dead may never die
What is alive may die anytime
A human’s heart keeps thumping to keep him alive.
What’s the thumping heart that keeps your dreams alive?
What is alive may die anytime
A human’s heart keeps thumping to keep him alive.
What’s the thumping heart that keeps your dreams alive?
July 30, 2025 at 7:58 PM
What is dead may never die
What is alive may die anytime
A human’s heart keeps thumping to keep him alive.
What’s the thumping heart that keeps your dreams alive?
What is alive may die anytime
A human’s heart keeps thumping to keep him alive.
What’s the thumping heart that keeps your dreams alive?
The unfortunate part about setting goals is the erosion of trust in yourself if you don’t fulfill those goals.
Incredible slippery slope.
Be careful what you wish for. But be bold to ask for what you truly want.
Paradoxical.
But not.
Incredible slippery slope.
Be careful what you wish for. But be bold to ask for what you truly want.
Paradoxical.
But not.
July 30, 2025 at 1:01 AM
The unfortunate part about setting goals is the erosion of trust in yourself if you don’t fulfill those goals.
Incredible slippery slope.
Be careful what you wish for. But be bold to ask for what you truly want.
Paradoxical.
But not.
Incredible slippery slope.
Be careful what you wish for. But be bold to ask for what you truly want.
Paradoxical.
But not.
This was one of the things I’ve been super excited about lately 2024.
Finally got to blogging and releasing the details behind building this cool stuff.
Finally got to blogging and releasing the details behind building this cool stuff.
Making a Masonry Layout That Works Today, by @zellwk.bsky.social (@[email protected]):
https://css-tricks.com/making-a-masonry-layout-that-works-today/
#css #layout #masonry
https://css-tricks.com/making-a-masonry-layout-that-works-today/
#css #layout #masonry
Making a Masonry Layout That Works Today | CSS-Tricks
I went on to figure out how make masonry work today with other browsers. I'm happy to report I've found a way — and, bonus! — that support can be provided with only 66 lines of JavaScript.
css-tricks.com
July 29, 2025 at 7:05 PM
This was one of the things I’ve been super excited about lately 2024.
Finally got to blogging and releasing the details behind building this cool stuff.
Finally got to blogging and releasing the details behind building this cool stuff.
One of the hardest parts about entrepreneurship is learning to keep expenses low.
It’s easy to succumb to the possibility and hype that something will work out — and overspend.
But what if it doesn’t work out?
True story that took a pretty difficult fall to learn.
It’s easy to succumb to the possibility and hype that something will work out — and overspend.
But what if it doesn’t work out?
True story that took a pretty difficult fall to learn.
July 29, 2025 at 5:23 PM
One of the hardest parts about entrepreneurship is learning to keep expenses low.
It’s easy to succumb to the possibility and hype that something will work out — and overspend.
But what if it doesn’t work out?
True story that took a pretty difficult fall to learn.
It’s easy to succumb to the possibility and hype that something will work out — and overspend.
But what if it doesn’t work out?
True story that took a pretty difficult fall to learn.
TIL that honeypot fields still work today — no need for recaptcha or other annoying solutions that users don’t really like.
Blog post about this coming soon.
Blog post about this coming soon.
July 29, 2025 at 4:45 PM
TIL that honeypot fields still work today — no need for recaptcha or other annoying solutions that users don’t really like.
Blog post about this coming soon.
Blog post about this coming soon.
I'm also quite misaligned with almost every tool out there that states yearly payment in monthly terms.
I'm actually quite sick of Adobe's pricing methods.
I only needed Photoshop and Lightroom for a month. I saw they have a discounted plan and I jumped on it... only to discover later that I gotta "pay up the difference" for the "yearly plan" (that was stated in monthly payments).
I only needed Photoshop and Lightroom for a month. I saw they have a discounted plan and I jumped on it... only to discover later that I gotta "pay up the difference" for the "yearly plan" (that was stated in monthly payments).
July 24, 2025 at 1:11 AM
I'm also quite misaligned with almost every tool out there that states yearly payment in monthly terms.
I'm actually quite sick of Adobe's pricing methods.
I only needed Photoshop and Lightroom for a month. I saw they have a discounted plan and I jumped on it... only to discover later that I gotta "pay up the difference" for the "yearly plan" (that was stated in monthly payments).
I only needed Photoshop and Lightroom for a month. I saw they have a discounted plan and I jumped on it... only to discover later that I gotta "pay up the difference" for the "yearly plan" (that was stated in monthly payments).
July 24, 2025 at 1:10 AM
I'm actually quite sick of Adobe's pricing methods.
I only needed Photoshop and Lightroom for a month. I saw they have a discounted plan and I jumped on it... only to discover later that I gotta "pay up the difference" for the "yearly plan" (that was stated in monthly payments).
I only needed Photoshop and Lightroom for a month. I saw they have a discounted plan and I jumped on it... only to discover later that I gotta "pay up the difference" for the "yearly plan" (that was stated in monthly payments).
I realize I soak up on people’s energy quite unconsciously as I read thru stuff.
Letting myself know that it’s okay to let go of all of those energies — and that I don’t have to do anything about them — allows me to lighten and unload.
Letting myself know that it’s okay to let go of all of those energies — and that I don’t have to do anything about them — allows me to lighten and unload.
July 23, 2025 at 3:18 PM
I realize I soak up on people’s energy quite unconsciously as I read thru stuff.
Letting myself know that it’s okay to let go of all of those energies — and that I don’t have to do anything about them — allows me to lighten and unload.
Letting myself know that it’s okay to let go of all of those energies — and that I don’t have to do anything about them — allows me to lighten and unload.
Finally just gonna be brave and release this openly: splendidlabz.com/solutions/la...
Build custom CSS Layouts in seconds
Build your features without worrying about layouts. Stay in your flow and complete your work faster
splendidlabz.com
July 21, 2025 at 11:17 AM
Finally just gonna be brave and release this openly: splendidlabz.com/solutions/la...
Just wanna have a place to sulk 😦
Family got caught up in a scam case, losing 80k in the process. This is related to a corporate account, so I am hoping the amount hasn't actually been cleared yet...
Need some prayers. Thanks.
Family got caught up in a scam case, losing 80k in the process. This is related to a corporate account, so I am hoping the amount hasn't actually been cleared yet...
Need some prayers. Thanks.
July 20, 2025 at 3:58 PM
Just wanna have a place to sulk 😦
Family got caught up in a scam case, losing 80k in the process. This is related to a corporate account, so I am hoping the amount hasn't actually been cleared yet...
Need some prayers. Thanks.
Family got caught up in a scam case, losing 80k in the process. This is related to a corporate account, so I am hoping the amount hasn't actually been cleared yet...
Need some prayers. Thanks.
@cssweekly.com Zoran, here's the article where I talk about how I use CSS Cascade Layers in the real world. (One aspect of it at least).
It's been many months away from your original question, so it might have been late. But hope this helps you somewhat.
css-tricks.com/using-css-ca...
It's been many months away from your original question, so it might have been late. But hope this helps you somewhat.
css-tricks.com/using-css-ca...
Using CSS Cascade Layers With Tailwind Utilities | CSS-Tricks
Being the bad boy I am, I don't take Tailwind's default approach to cascade layers as the "best" one. Over a year experimenting with Tailwind and vanilla CSS, I've come across what I believe is a bett...
css-tricks.com
July 14, 2025 at 4:06 PM
@cssweekly.com Zoran, here's the article where I talk about how I use CSS Cascade Layers in the real world. (One aspect of it at least).
It's been many months away from your original question, so it might have been late. But hope this helps you somewhat.
css-tricks.com/using-css-ca...
It's been many months away from your original question, so it might have been late. But hope this helps you somewhat.
css-tricks.com/using-css-ca...
Finally got multi-turn chat working with Astro + Svelte + Turso (for DB).
Streaming is a new challenge that I have just sorta conquered!
Streaming is a new challenge that I have just sorta conquered!
July 12, 2025 at 3:34 PM
Finally got multi-turn chat working with Astro + Svelte + Turso (for DB).
Streaming is a new challenge that I have just sorta conquered!
Streaming is a new challenge that I have just sorta conquered!
Personal blogs and even social media seems to gain some form of traction if the person can be known for one thing — this statement seems to be an illusion.
July 9, 2025 at 5:52 AM
Personal blogs and even social media seems to gain some form of traction if the person can be known for one thing — this statement seems to be an illusion.
Creating a proper LLM Chat Interface is a pretty involved process — not easy.
It's been two days and I'm still struggling to figure things out.
It's been two days and I'm still struggling to figure things out.
July 8, 2025 at 4:45 AM
Creating a proper LLM Chat Interface is a pretty involved process — not easy.
It's been two days and I'm still struggling to figure things out.
It's been two days and I'm still struggling to figure things out.
One thing to remember — AI information is often outdated. So take that with a pinch of salt if you're in a fast-moving industry like what we're in.
For stable things, they might be accurate. But still, check to be sure. Cos you wanna ensure you don't take in hallucinations unknowingly.
For stable things, they might be accurate. But still, check to be sure. Cos you wanna ensure you don't take in hallucinations unknowingly.
July 8, 2025 at 2:47 AM
One thing to remember — AI information is often outdated. So take that with a pinch of salt if you're in a fast-moving industry like what we're in.
For stable things, they might be accurate. But still, check to be sure. Cos you wanna ensure you don't take in hallucinations unknowingly.
For stable things, they might be accurate. But still, check to be sure. Cos you wanna ensure you don't take in hallucinations unknowingly.
Of all the possible things that I can do, it feels really difficult to box myself in publicly and say “I’m a X”.
At the same time, that’s what most people are able or willing to accept, given the small amount of attention each one of us can now give to others
At the same time, that’s what most people are able or willing to accept, given the small amount of attention each one of us can now give to others
July 7, 2025 at 11:42 PM
Of all the possible things that I can do, it feels really difficult to box myself in publicly and say “I’m a X”.
At the same time, that’s what most people are able or willing to accept, given the small amount of attention each one of us can now give to others
At the same time, that’s what most people are able or willing to accept, given the small amount of attention each one of us can now give to others
Hm. Am I the only person who finds LangGraph extremely extremely extremely confusing? 🤔.
I'm not sure what I'm not getting here.
I'm not sure what I'm not getting here.
July 7, 2025 at 8:23 AM
Hm. Am I the only person who finds LangGraph extremely extremely extremely confusing? 🤔.
I'm not sure what I'm not getting here.
I'm not sure what I'm not getting here.
Playing around with Claude Code now, I can begin to see that future App Creation Scaffolds can easily be done via LLMs.
That would be an interesting way to begin new projects instead of copy-pasting from old projects.
That would be an interesting way to begin new projects instead of copy-pasting from old projects.
July 6, 2025 at 3:47 AM
Playing around with Claude Code now, I can begin to see that future App Creation Scaffolds can easily be done via LLMs.
That would be an interesting way to begin new projects instead of copy-pasting from old projects.
That would be an interesting way to begin new projects instead of copy-pasting from old projects.
2 articles, 5600 words, in 3 days (not full days)
Pretty difficult for me to look back and say I’m not productive — which has been the general statement I keep blasting myself with.
Pretty difficult for me to look back and say I’m not productive — which has been the general statement I keep blasting myself with.
July 5, 2025 at 2:34 PM
2 articles, 5600 words, in 3 days (not full days)
Pretty difficult for me to look back and say I’m not productive — which has been the general statement I keep blasting myself with.
Pretty difficult for me to look back and say I’m not productive — which has been the general statement I keep blasting myself with.
Reposted by Zell Liew
Tailwind has an opinionated approach (I know, shocker) to layering styles. @zellwk.bsky.social has a less "orthodox" way to go about it, interestingly using the !important keyword to prioritize his styles.
css-tricks.com/using-css-ca...
css-tricks.com/using-css-ca...
Using CSS Cascade Layers With Tailwind Utilities | CSS-Tricks
Being the bad boy I am, I don't take Tailwind's default approach to cascade layers as the "best" one. Over a year experimenting with Tailwind and vanilla CSS, I've come across what I believe is a bett...
css-tricks.com
June 30, 2025 at 1:45 PM
Tailwind has an opinionated approach (I know, shocker) to layering styles. @zellwk.bsky.social has a less "orthodox" way to go about it, interestingly using the !important keyword to prioritize his styles.
css-tricks.com/using-css-ca...
css-tricks.com/using-css-ca...
Reposted by Zell Liew
A few clever ideas that @zellwk.bsky.social has for making the MutationObserver and IntersectionObserver easier to use with a little refactoring.
css-tricks.com/a-better-api...
css-tricks.com/a-better-api...
A Better API for the Intersection and Mutation Observers | CSS-Tricks
Zell discusses refactoring the Resize, Mutation, and Intersection Observer APIs for easier usage, demonstrating how to implement callback and event listener patterns, while highlighting available opti...
css-tricks.com
June 23, 2025 at 4:33 PM
A few clever ideas that @zellwk.bsky.social has for making the MutationObserver and IntersectionObserver easier to use with a little refactoring.
css-tricks.com/a-better-api...
css-tricks.com/a-better-api...