Emil Kowalski's banner
Emil Kowalski's profile picture

Emil Kowalski

@emilkowalski70,140 subscribers

Currently @linear, https://t.co/uxXxCQx3aK

Shorts

Don’t animate keyboard-initiated actions. As an example, I use Raycast hundreds of times a day. If it animated every time I opened it, it would make it feel slow, delayed, and disconnected from my actions. But there’s no animation at all. That’s the optimal experience.

Don’t animate keyboard-initiated actions. As an example, I use Raycast hundreds of times a day. If it animated every time I opened it, it would make it feel slow, delayed, and disconnected from my actions. But there’s no animation at all. That’s the optimal experience.

314,291 次观看

Made this interaction of Linear’s dithered logo for our latest release. It’s using canvas with a lot of tiny dots. There’s an invisible circle around the cursor. Any dot inside it gets pushed outward with a cubic falloff so it’s gentle on the edges, and strong at the center.

Made this interaction of Linear’s dithered logo for our latest release. It’s using canvas with a lot of tiny dots. There’s an invisible circle around the cursor. Any dot inside it gets pushed outward with a cubic falloff so it’s gentle on the edges, and strong at the center.

460,233 次观看

You might’ve seen this bug before where the hover state keeps flickering. The fix is to separate the trigger from the effect. Listen for hovers on the parent, but animate a child element instead. This ensures that the hover area stays consistent.

You might’ve seen this bug before where the hover state keeps flickering. The fix is to separate the trigger from the effect. Listen for hovers on the parent, but animate a child element instead. This ensures that the hover area stays consistent.

663,528 次观看

One of my favorite things from the new Linear homepage are these side drawers which you can open to get some info about a specific feature. Made with Base UI’s dialog component and some ease-out.

One of my favorite things from the new Linear homepage are these side drawers which you can open to get some info about a specific feature. Made with Base UI’s dialog component and some ease-out.

48,459 次观看

There’s a fun little easter egg in my animation course: As enrollment gets closer to closing, the butter cube melts more with each hour by animating the svg paths.

There’s a fun little easter egg in my animation course: As enrollment gets closer to closing, the butter cube melts more with each hour by animating the svg paths.

138,093 次观看

A high-ROI tip from is to record your animations and play them frame by frame to spot imperfections you wouldn’t otherwise notice. These hidden imperfections are what makes an animation feel off, even though it looks alright at first glance.

A high-ROI tip from is to record your animations and play them frame by frame to spot imperfections you wouldn’t otherwise notice. These hidden imperfections are what makes an animation feel off, even though it looks alright at first glance.

30,250 次观看

Introducing Animations on the web A course about how to craft animations that make people feel something. It contains everything I know about motion on the web.

Introducing Animations on the web A course about how to craft animations that make people feel something. It contains everything I know about motion on the web.

650,595 次观看

Hover transitions seen tens, maybe even hundreds of times a day can make your interface feel slower. Make them snappy by removing the transition altogether.

Hover transitions seen tens, maybe even hundreds of times a day can make your interface feel slower. Make them snappy by removing the transition altogether.

115,120 次观看

Keep your animations fast. A faster-spinning spinner makes you think the app loads faster. It improves perceived performance. The same applies to user-initiated actions. Use `ease-out` to make them feel snappy and responsive.

Keep your animations fast. A faster-spinning spinner makes you think the app loads faster. It improves perceived performance. The same applies to user-initiated actions. Use `ease-out` to make them feel snappy and responsive.

101,854 次观看

Some animations for the hero section of animations[.]dev. Made by a course student (dimi). Coming soon.

Some animations for the hero section of animations[.]dev. Made by a course student (dimi). Coming soon.

47,559 次观看

Some exciting updates coming to my animation course soon. Here’s a sneak peek (this won’t be a lesson on 3D):

Some exciting updates coming to my animation course soon. Here’s a sneak peek (this won’t be a lesson on 3D):

25,634 次观看

Trying some stuff out and I kinda like that the button changes color depending on the state that it's in?

Trying some stuff out and I kinda like that the button changes color depending on the state that it's in?

47,948 次观看

Videos

emilkowalski's profile picture

A year at Linear

Emil Kowalski

402,736 次观看 • 7 个月前

emilkowalski's profile picture

Some Linear Method interactions

Emil Kowalski

38,066 次观看 • 4 个月前

没有更多内容可加载