Found 38 bookmarks
Newest
X'te Gabriel: "Design Engineering Tip If your modal scrolls like this, you’re probably missing one CSS property: overscroll-behavior: contain; It prevents the page behind the modal from scrolling when users reach the top or bottom. https://t.co/8XdLOD8fGf" / X
X'te Gabriel: "Design Engineering Tip If your modal scrolls like this, you’re probably missing one CSS property: overscroll-behavior: contain; It prevents the page behind the modal from scrolling when users reach the top or bottom. https://t.co/8XdLOD8fGf" / X
X'te Gabriel: "Design Engineering Tip If your modal scrolls like this, you’re probably missing one CSS property: overscroll-behavior: contain; It prevents the page behind the modal from scrolling when users reach the top or bottom. https://t.co/8XdLOD8fGf" / X
(1) X'te Gabriel: "Design Engineering Tip: Don’t apply backdrop-filter directly to your modal. Move the blur to a separate pseudo-layer instead. Separating the blur from the content can reduce paint and compositing work, especially when animating the modal. Code snippet below. https://t.co/MVoXDl8knb" / X
(1) X'te Gabriel: "Design Engineering Tip: Don’t apply backdrop-filter directly to your modal. Move the blur to a separate pseudo-layer instead. Separating the blur from the content can reduce paint and compositing work, especially when animating the modal. Code snippet below. https://t.co/MVoXDl8knb" / X
(1) X'te Gabriel: "Design Engineering Tip: Don’t apply backdrop-filter directly to your modal. Move the blur to a separate pseudo-layer instead. Separating the blur from the content can reduce paint and compositing work, especially when animating the modal. Code snippet below. https://t.co/MVoXDl8knb" / X
X'te Manu Arora: "font-smoothing fixes heavier, chunky text on dark backgrounds with tailwind, just add the `𝚊𝚗𝚝𝚒𝚊𝚕𝚒𝚊𝚜𝚎𝚍` class or use plain css .𝚊𝚗𝚝𝚒𝚊𝚕𝚒𝚊𝚜𝚎𝚍 { -𝚠𝚎𝚋𝚔𝚒𝚝-𝚏𝚘𝚗𝚝-𝚜𝚖𝚘𝚘𝚝𝚑𝚒𝚗𝚐: 𝚊𝚗𝚝𝚒𝚊𝚕𝚒𝚊𝚜𝚎𝚍; https://t.co/dYVaCDvSfi" / X
X'te Manu Arora: "font-smoothing fixes heavier, chunky text on dark backgrounds with tailwind, just add the `𝚊𝚗𝚝𝚒𝚊𝚕𝚒𝚊𝚜𝚎𝚍` class or use plain css .𝚊𝚗𝚝𝚒𝚊𝚕𝚒𝚊𝚜𝚎𝚍 { -𝚠𝚎𝚋𝚔𝚒𝚝-𝚏𝚘𝚗𝚝-𝚜𝚖𝚘𝚘𝚝𝚑𝚒𝚗𝚐: 𝚊𝚗𝚝𝚒𝚊𝚕𝚒𝚊𝚜𝚎𝚍; https://t.co/dYVaCDvSfi" / X
X'te Manu Arora: "font-smoothing fixes heavier, chunky text on dark backgrounds with tailwind, just add the `𝚊𝚗𝚝𝚒𝚊𝚕𝚒𝚊𝚜𝚎𝚍` class or use plain css .𝚊𝚗𝚝𝚒𝚊𝚕𝚒𝚊𝚜𝚎𝚍 { -𝚠𝚎𝚋𝚔𝚒𝚝-𝚏𝚘𝚗𝚝-𝚜𝚖𝚘𝚘𝚝𝚑𝚒𝚗𝚐: 𝚊𝚗𝚝𝚒𝚊𝚕𝚒𝚊𝚜𝚎𝚍; https://t.co/dYVaCDvSfi" / X
X'te Gabriel: "Design Engineering Tip Consider letting textareas grow with the content instead of introducing nested scrolling. It often creates a smoother writing experience and keeps forms easier to scan. CSS: textarea { field-sizing: content; } https://t.co/MZPOnNEaLt" / X
X'te Gabriel: "Design Engineering Tip Consider letting textareas grow with the content instead of introducing nested scrolling. It often creates a smoother writing experience and keeps forms easier to scan. CSS: textarea { field-sizing: content; } https://t.co/MZPOnNEaLt" / X
X'te Gabriel: "Design Engineering Tip Consider letting textareas grow with the content instead of introducing nested scrolling. It often creates a smoother writing experience and keeps forms easier to scan. CSS: textarea { field-sizing: content; } https://t.co/MZPOnNEaLt" / X
X'te jhey ʕ•ᴥ•ʔ: "if you’re dynamically masking a scroll container with css, consider leaving room for the scrollbar instead of masking it too 🧑‍🍳 mask-repeat: no-repeat; mask-size: calc(100% - 10px) 100px; https://t.co/WYQk4gRJ69" / X
X'te jhey ʕ•ᴥ•ʔ: "if you’re dynamically masking a scroll container with css, consider leaving room for the scrollbar instead of masking it too 🧑‍🍳 mask-repeat: no-repeat; mask-size: calc(100% - 10px) 100px; https://t.co/WYQk4gRJ69" / X
X'te jhey ʕ•ᴥ•ʔ: "if you’re dynamically masking a scroll container with css, consider leaving room for the scrollbar instead of masking it too 🧑‍🍳 mask-repeat: no-repeat; mask-size: calc(100% - 10px) 100px; https://t.co/WYQk4gRJ69" / X
X'te Emil Kowalski: "Based on the feedback on the https://t.co/RP4FIdUrS8 skill file, it’s clear that skills are a great fit for educational content. You learn by going through the course, and once you’re done, the skill keeps the lessons with you as you build. Here’s another snippet from it: https://t.co/ULeG4mPQ0m" / X
X'te Emil Kowalski: "Based on the feedback on the https://t.co/RP4FIdUrS8 skill file, it’s clear that skills are a great fit for educational content. You learn by going through the course, and once you’re done, the skill keeps the lessons with you as you build. Here’s another snippet from it: https://t.co/ULeG4mPQ0m" / X
X'te Emil Kowalski: "Based on the feedback on the https://t.co/RP4FIdUrS8 skill file, it’s clear that skills are a great fit for educational content. You learn by going through the course, and once you’re done, the skill keeps the lessons with you as you build. Here’s another snippet from it: https://t.co/ULeG4mPQ0m" / X
X'te Josef Bender: "I just wanted to share a really useful function if you're using @tan_stack Start with @supabase . This is for those who are using client-side authentication, but want to authenticate the users on the server (e.g. for server function). The following is a middleware that checks https://t.co/FvVZH3m7jL" / X
X'te Josef Bender: "I just wanted to share a really useful function if you're using @tan_stack Start with @supabase . This is for those who are using client-side authentication, but want to authenticate the users on the server (e.g. for server function). The following is a middleware that checks https://t.co/FvVZH3m7jL" / X
X'te Josef Bender: "I just wanted to share a really useful function if you're using @tan_stack Start with @supabase . This is for those who are using client-side authentication, but want to authenticate the users on the server (e.g. for server function). The following is a middleware that checks https://t.co/FvVZH3m7jL" / X
X'te Emil Kowalski: "Artificially delaying writes like form submissions can give your users more confidence that their changes went through. It gets annoying in high-frequency apps like Linear, but it feels better than an optimistic update during occasional submissions like a contact form. https://t.co/BQ1YuwpsPq" / X
X'te Emil Kowalski: "Artificially delaying writes like form submissions can give your users more confidence that their changes went through. It gets annoying in high-frequency apps like Linear, but it feels better than an optimistic update during occasional submissions like a contact form. https://t.co/BQ1YuwpsPq" / X
X'te Emil Kowalski: "Artificially delaying writes like form submissions can give your users more confidence that their changes went through. It gets annoying in high-frequency apps like Linear, but it feels better than an optimistic update during occasional submissions like a contact form. https://t.co/BQ1YuwpsPq" / X
(1) X'te Emil Kowalski: "A way to make your interface feel faster is to use `ease-out` easing for enter and exit animations. This curve accelerates at the beginning, which feels more snappy than `ease-in` which does the opposite. Here's `ease-out` vs `ease-in`with the same duration + curve comparison: https://t.co/IicGRB9t1R" / X
(1) X'te Emil Kowalski: "A way to make your interface feel faster is to use `ease-out` easing for enter and exit animations. This curve accelerates at the beginning, which feels more snappy than `ease-in` which does the opposite. Here's `ease-out` vs `ease-in`with the same duration + curve comparison: https://t.co/IicGRB9t1R" / X
(1) X'te Emil Kowalski: "A way to make your interface feel faster is to use `ease-out` easing for enter and exit animations. This curve accelerates at the beginning, which feels more snappy than `ease-in` which does the opposite. Here's `ease-out` vs `ease-in`with the same duration + curve comparison: https://t.co/IicGRB9t1R" / X
X'te Zafer Ayan: "NextJS prefetcing övme saati. <Link/> componenti kendi içinde IntersectionObserver barındırıyor ve görsel ekrana girdiği anda linkin gideceği sayfayı compile edip client tarafa stream ediyor. Böylece link client cache'e yazılıyor ve ışık hızında çalışıyor. https://t.co/r1r3rssQe6" / X
X'te Zafer Ayan: "NextJS prefetcing övme saati. <Link/> componenti kendi içinde IntersectionObserver barındırıyor ve görsel ekrana girdiği anda linkin gideceği sayfayı compile edip client tarafa stream ediyor. Böylece link client cache'e yazılıyor ve ışık hızında çalışıyor. https://t.co/r1r3rssQe6" / X
X'te Zafer Ayan: "NextJS prefetcing övme saati. <Link/> componenti kendi içinde IntersectionObserver barındırıyor ve görsel ekrana girdiği anda linkin gideceği sayfayı compile edip client tarafa stream ediyor. Böylece link client cache'e yazılıyor ve ışık hızında çalışıyor. https://t.co/r1r3rssQe6" / X
(1) X'te shadcn: "I use `ianvs/prettier-plugin-sort-imports` by @IanVanSchooten for sorting imports. ◆ React is always first. ◆ Followed by Next.js official packages: next/image, link..etc ◆ Then third party imports. ◆ Blank line ◆ Local imports in the order: types, config, lib, components. https://t.co/IMnTit4bp7" / X
(1) X'te shadcn: "I use `ianvs/prettier-plugin-sort-imports` by @IanVanSchooten for sorting imports. ◆ React is always first. ◆ Followed by Next.js official packages: next/image, link..etc ◆ Then third party imports. ◆ Blank line ◆ Local imports in the order: types, config, lib, components. https://t.co/IMnTit4bp7" / X
(1) X'te shadcn: "I use `ianvs/prettier-plugin-sort-imports` by @IanVanSchooten for sorting imports. ◆ React is always first. ◆ Followed by Next.js official packages: next/image, link..etc ◆ Then third party imports. ◆ Blank line ◆ Local imports in the order: types, config, lib, components. https://t.co/IMnTit4bp7" / X