Системы эффектов Недавно послушал выпуск Подлодки про "Системы эффектов в языках программирования" и решил поделиться некоторыми рандомными рассуждениями на эту тему. "Окраска" функций "Окраской" функций называется некоторая декларация эффектов, содержащихся в функции. В JavaScript есть 2 варианта "окраски" функций: - async — обозначает, что функция асинхронная и позволяет использовать внутри неё оператор await - — обозначает, что функция является генератором и позволяет использовать внутри неё ...
Hacknote.js
Заметки о веб-разработке и около неё https://newesters.github.io/hacknote-js/
Графики
📊 Средний охват постов
📉 ERR % по дням
📋 Публикации по дням
📎 Типы контента
Лучшие публикации
17 из 178 июня расскажу на Я ❤️ Фронтенд об инструменте, который используется в нашей компании для сборки микрофронтендов. В программе: - ткнём палкой в давным давно мёртвый Create React App - проследим мотивацию, историю создания, развития и внедрения на ~60 проектов нашего инструментария для сборки - переймём лучший опыт похожих проектов - конечно же не забудем проявить заботу к коллегам
Дивный новый Vite В своём докладе про то, как мы с CRA съезжали я уже упомянал о планах Vite по переезду на Rust и вот на недавнем ViteConf Эван Ю более подробно рассказал об этих планах. Напомню, что основная идея заключается в замене связки Rollup (эффективный и гибкий, но медленный) и ESBuild (ничего не умеет, но быстрый) на Rolldown (эффективный, гибкий и быстрый) с целью избавиться от неконсистентности между дев и прод сборками. В качестве транспилятора на замену Babel приходит Oxc, который...
В поисках рантайма для Typescript В подавляющем большинстве случаев я стараюсь держать любой код в проекте поддерживаемым и документированным, поэтому даже всякие утилитарные скрипты для сборки или кодогенерации пишу на Typescript. Долгое время для запуска таких скриптов я использовал ts-node, который считал стандартом де-факто для решения этой задачи, но недавно наткнулся на утилиту tsx. На поиск нового решения меня сподвигла кривая поддержка ESM в ts-node (в Node.js 18 у меня не завелось). С t...
Эволюция микрофронтендов На недавнем Frontend Conf я рассказывал о текущем состоянии микрофронтов. Постарался рассказать максимально доступным языком, при этом не теряя важных концептуальных деталей, и проиллюстрировать наглядными схемами, поэтому на мой взгляд доклад будет полезен даже тем, кто уже посмотрел множество других докладов про микрофронты.
В бете Safari 18 заявлена долгожданная (по крайней мере мной) поддержка View Transitions API, который уже довольно давно поддерживается в Chromium-based бразуерах и по такому поводу я решил сделать небольшой редизайн главной страницы своего блога. На мой взгляд эта фича вносит огромный вклад в то, чтобы Web-приложения ощущались как нативные и при этом не требует особых вложений с точки зрения разработки (особенно при использовании Astro). Если у вас есть классные примеры использования этого API,...
Пранк, который вышел из под контроля Недавно решал проблему с тем, что после загрузки приложения происходит заметный скачок элементов страницы, связанный с загрузкой шрифтов. В процессе исследования проблемы выяснилось, что @vitejs/plugin-legacy инлайнит CSS в JS-бандл с легаси сборкой, что приводит к тому, что шрифты гарантированно будут загружены после JS и скачок неизбежен. Отказываться от plugin-legacy или возиться со сборкой было лень, поэтому я начал раздумывать над каким-то надёжным решен...