Pinned Tweet
Раз я ничего не пишу в твиттере, завел себе канал про фронтенд в телеграме, чтобы ничего не писать там. Подписывайтесь!
Твиттерский никнейм retweeted
В npm сделали Staged Publishing — и это крутая технология на которую я собираюсь перевести весь свой опенсорс.
Есть npm provenance — способ связать содержимое GitHub и пакета. Но раньше он требовал деплоить через CI, а сейчас стало можно требовать 2FA.
docs.npmjs.com/staged-publis…
Каждый раз когда я вижу код современного C++, удивляюсь какой же это мусор. Буквально программное хрючево, остататки 3 салатов, залитые яйцом.
А я на JavaScript пишу, не самый, мягко говоря, красивый язык.
Твиттерский никнейм retweeted
🎉 Next.js with Rspack just hit 99% test coverage in development!
Experience it now:
rspack.rs/guide/tech/next
Твиттерский никнейм retweeted
Вы не ждали (вы ждали, я знаю), а я ВЕРНУЛАСЬ с розыгрышем бесплатной проходки на курс по цифровой доступности! 🎉
Если ты дизайнер или веб-разработчик - скорее делай репост, а в среду вечером 17.09 я выберу победителя!
Стартуем совсем скоро, 28.09.2025!
accessibilityunity.com/
Твиттерский никнейм retweeted
Давно хотел написать про end-to-end шифрование в современных peer-to-peer чатах и куда всё сейчас активно идёт с появлением MLS
Начнём с первой части — как мы от простого обмена ключами пришли к самоизлечивающимся шифровальным деревьям для больших групп
vas3k.blog/blog/end_to_end_e…
Твиттерский никнейм retweeted
TypeScript can we pleeeease have this?
I don't want to have to write an arrow function with a bunch of extra parenthesis to make this work
Твиттерский никнейм retweeted
By the end of 2024, you’ll likely never need these APIs again:
• useMemo, useCallback, memo → React Compiler
• forwardRef → ref is a prop
• React.lazy → RSC, promise-as-child
• useContext → use(Context)
• throw promise → use(promise)
• <Context.Provider> → <Context>
Целый месяц ломал голову над тем, как заставить один костыльный монорепозиторий работать с симлинками. А потом понял что для моей задачи это не надо и вообще можно упроститься в 100 раз…
Твиттерский никнейм retweeted
🎨 I'm currently working on a cool feature for @WebStormIDE: highlighting client components with a dedicated color. Here are some screenshots from our internal build. We'd love to hear your opinion with a poll in the thread 🧵
Btw I do use #trpc for and also happy with the built-in apis
Пруф непонимания того как работают переменные в JavaScript
В этом коде проблема в том что деструктуризация баланса создает нам не ссылочную переменную а обычную, значение которой будет определенно в рамках этой функции
Никакой гонки тут нет
Пруф возможности состояния гонки в асинхронном программировании на JavaScript github.com/HowProgrammingWor…
Твиттерский никнейм retweeted
Today I learned that node's EventEmitter suffers from an issue called "producer interference".
That's where an error thrown by a synchronous consumer (whomever called `on`) prevents the producer (the `EventEmitter`) from notifying subsequent other consumers.
This is something we had to change about Observable/Subject in RxJS 6 because of discussion about it in the original TC39 proposal and issues we saw it cause in production apps.
Imagine that you hand this emitter instance to several components, and each of those components is managed by a different team. An error from one of those components will arbitrarily stop some of the other components from getting notified and therefor they'll seem broken, even if they didn't have a problem. "Spooky action at a distance" sort of errors. These can be very hard to suss out.
(thanks @matteocollina and @dailydotdev for bringing this to my attention! very interesting!)
Твиттерский никнейм retweeted
Future CSS Tip! 🔮
You can create sweet scroll-driven micro-interactions using CSS scroll-driven animations 😎
.avatar {
animation: scale-down;
animation-timeline: scroll();
animation-range: var(--header-range);
}
@ keyframes scale-down {
to {
scale: 0.3;
}
}
What's happening in this one? 👀
1. Avatar moves and scales down as the header sticks
2. Name changes color and slides over
3. Header darkens to give the text contrast
4. Header gets a shadow
5. Notice the avatar scrub too! 👀 It's scroll-driving the sprite animation technique we went over earlier in the week ✨
So much fun! ✨ Could even tie in the new easings from earlier too!
@CodePen link below! 👇





















