ar
Feedback
Фронтендер от бога

Фронтендер от бога

الذهاب إلى القناة على Telegram

Божественные дайджесты по фронтенду и немного юмора. По всем вопросам: @godinmedia

إظهار المزيد
3 430
المشتركون
لا توجد بيانات24 ساعات
-47 أيام
-2030 أيام
جذب المشتركين
أغسطس '26
أغسطس '26
+8
في 0 قنوات
يوليو '26
+6
في 0 قنوات
Get PRO
يونيو '26
+4
في 0 قنوات
Get PRO
مايو '26
+6
في 0 قنوات
Get PRO
أبريل '26
+2
في 0 قنوات
Get PRO
مارس '26
+3
في 0 قنوات
Get PRO
فبراير '26
+1
في 0 قنوات
Get PRO
يناير '26
+4
في 0 قنوات
Get PRO
ديسمبر '25
+21
في 0 قنوات
Get PRO
نوفمبر '25
+7
في 0 قنوات
Get PRO
أكتوبر '250
في 0 قنوات
Get PRO
سبتمبر '25
+2
في 0 قنوات
Get PRO
أغسطس '25
+3
في 0 قنوات
Get PRO
يوليو '25
+2
في 0 قنوات
Get PRO
يونيو '25
+2
في 0 قنوات
Get PRO
مايو '25
+7
في 0 قنوات
Get PRO
أبريل '25
+6
في 0 قنوات
Get PRO
مارس '25
+192
في 0 قنوات
Get PRO
فبراير '25
+190
في 0 قنوات
Get PRO
يناير '25
+36
في 0 قنوات
Get PRO
ديسمبر '24
+101
في 0 قنوات
Get PRO
نوفمبر '24
+593
في 0 قنوات
Get PRO
أكتوبر '24
+610
في 0 قنوات
Get PRO
سبتمبر '24
+475
في 0 قنوات
Get PRO
أغسطس '24
+589
في 0 قنوات
Get PRO
يوليو '24
+642
في 0 قنوات
Get PRO
يونيو '24
+55
في 0 قنوات
Get PRO
مايو '24
+16
في 0 قنوات
Get PRO
أبريل '24
+14
في 0 قنوات
Get PRO
مارس '24
+30
في 0 قنوات
Get PRO
فبراير '24
+78
في 1 قنوات
Get PRO
يناير '24
+43
في 0 قنوات
Get PRO
ديسمبر '23
+39
في 0 قنوات
Get PRO
نوفمبر '23
+9
في 0 قنوات
Get PRO
أكتوبر '23
+17
في 0 قنوات
Get PRO
سبتمبر '23
+73
في 0 قنوات
Get PRO
أغسطس '23
+164
في 0 قنوات
Get PRO
يوليو '23
+487
في 0 قنوات
Get PRO
يونيو '23
+412
في 0 قنوات
Get PRO
مايو '23
+12
في 0 قنوات
Get PRO
أبريل '23
+7
في 0 قنوات
Get PRO
مارس '23
+5
في 0 قنوات
Get PRO
فبراير '23
+12
في 0 قنوات
Get PRO
يناير '23
+15
في 0 قنوات
Get PRO
ديسمبر '22
+82
في 0 قنوات
Get PRO
نوفمبر '22
+10
في 0 قنوات
Get PRO
أكتوبر '22
+8
في 0 قنوات
Get PRO
سبتمبر '22
+10
في 0 قنوات
Get PRO
أغسطس '22
+13
في 0 قنوات
Get PRO
يوليو '22
+111
في 0 قنوات
Get PRO
يونيو '22
+13
في 0 قنوات
Get PRO
مايو '22
+106
في 0 قنوات
Get PRO
أبريل '22
+127
في 0 قنوات
Get PRO
مارس '22
+9
في 0 قنوات
Get PRO
فبراير '22
+10
في 0 قنوات
Get PRO
يناير '22
+15
في 0 قنوات
Get PRO
ديسمبر '21
+72
في 0 قنوات
Get PRO
نوفمبر '21
+347
في 0 قنوات
Get PRO
أكتوبر '21
+836
في 0 قنوات
Get PRO
سبتمبر '21
+350
في 0 قنوات
Get PRO
أغسطس '21
+83
في 0 قنوات
Get PRO
يوليو '21
+140
في 0 قنوات
Get PRO
يونيو '21
+339
في 0 قنوات
Get PRO
مايو '21
+1 365
في 0 قنوات
Get PRO
أبريل '21
+439
في 0 قنوات
Get PRO
مارس '21
+4 710
في 0 قنوات
التاريخ
نمو المشتركين
الإشارات
القنوات
26 أغسطس0
25 أغسطس+1
24 أغسطس0
23 أغسطس+1
22 أغسطس+1
21 أغسطس0
20 أغسطس0
19 أغسطس+1
18 أغسطس0
17 أغسطس+1
16 أغسطس+1
15 أغسطس0
14 أغسطس0
13 أغسطس0
12 أغسطس+1
11 أغسطس0
10 أغسطس0
09 أغسطس0
08 أغسطس+1
07 أغسطس0
06 أغسطس0
05 أغسطس0
04 أغسطس0
03 أغسطس0
02 أغسطس0
01 أغسطس0
منشورات القناة
hq-cropper: Image Cropper без зависимостей для JavaScript #почитать Хочу рассказать о своей библиотеке hq-cropper — инструмен
hq-cropper: Image Cropper без зависимостей для JavaScript #почитать Хочу рассказать о своей библиотеке hq-cropper — инструменте для обрезки изображений на чистом TypeScript без единой зависимости. Когда искал cropper для своего проекта, столкнулся с двумя проблемами. Во-первых, большинство популярных решений тянут за собой кучу зависимостей и весят 100+ KB. Во-вторых, мало кто работает с большими изображениями. Читать статью

2
Ленивые итераторы в JavaScript: руководство с примерами #почитать Полное руководство по хелперам итераторов в JavaScript: как
Ленивые итераторы в JavaScript: руководство с примерами #почитать Полное руководство по хелперам итераторов в JavaScript: как ленивые вычисления заменяют цепочки .map().filter() и экономят память. Примеры, сравнение с массивами, подводные камни. ⏱Читать статью
419
3
Symbol.iterator: управление spread-синтаксисом JavaScript #почитать Symbol.iterator — это не просто «ещё один символ» в JavaS
Symbol.iterator: управление spread-синтаксисом JavaScript #почитать Symbol.iterator — это не просто «ещё один символ» в JavaScript. Это ключ, который позволяет вам сказать языку, как именно ваш объект должен вести себя в таких фундаментальных операциях, как цикл for...of или синтаксис spread (...). На практике это даёт удивительную возможность: создавать объекты, которые могут быть одновременно и структурированными хранилищами данных с именованными свойствами, и коллекциями, готовыми к «разворачиванию» в аргументы функции. В статье мы разберём, как с помощью Symbol.iterator решить классическую дилемму «объект или массив» на конкретном примере из реальной задачи. ⏱Читать статью
521
4
Мой справочник по Feature-Sliced Design #почитать Так как при использовании Feature-Sliced Design (FSD) возникает много вопро
Мой справочник по Feature-Sliced Design #почитать Так как при использовании Feature-Sliced Design (FSD) возникает много вопросов и разные люди понимают её по-разному, я решил написать статью-справочник, раскрывающий некоторые подробности методологии. В этой статье я продолжаю использовать те же принципы и часть терминологии, что и в предыдущей. Здесь я, в основном, описываю структурирование по правилам методологии. А в следующей статье, напротив, рассмотрю, как можно улучшить структуру проекта, намеренно нарушая правила FSD. Заранее предупрежу, что правила методологии носят рекомендательный, а не обязательный характер. Их назначение — задать направление структурирования, а дальше принимать решения нужно в зависимости от конкретного проекта и ситуации в нём. Строгое же следование правилам может привести к бо̒льшим проблем, чем их нарушение. ⏱Читать статью
604
5
Бесплатные и платные хостинги для сайтов на Next, React и JAMStack #почитать Сегодня я рассмотрю несколько специализированных
Бесплатные и платные хостинги для сайтов на Next, React и JAMStack #почитать Сегодня я рассмотрю несколько специализированных сервисов для хостинга фронта, среди которых не будет однотипных VPS. Только узкоспециализированные решения для хостинга сайтов. Мне хотелось ответить на вопрос, какой сервис будет лучшим для конкретного, узкого сценария и стека, а не просто перебрать очевидные сервисы, которые популярны, но не имеют своей специализации. ⏱Читать статью
478
6
Intlayer: альтернатива @nuxt/i18n с фокусом на оптимизации бандла #почитать После интеграции nuxt/i18n в несколько моих проек
Intlayer: альтернатива @nuxt/i18n с фокусом на оптимизации бандла #почитать После интеграции nuxt/i18n в несколько моих проектов я пришел к однозначному выводу: это, безусловно, лучшее i18n-решение для JS-фреймворков. Его «plug&play» настройка, загрузка пространств имен (namespaces) и встроенная маршрутизация, настоящее удовольствие в работе. Однако у этого решения есть серьезная проблема: загруженные пространства имен не подвергаются «тришейкингу» (tree-shaking). Несмотря на то, что JSON-файлы могут загружаться динамически для каждой локали, Nuxt в итоге объединяет их, что означает, что файл locale/zh/about.json загружается на всех страницах. ⏱Читать статью
582
7
Рендер-функции и Teleport в Vue.js #почитать Декларативные шаблоны Vue решают 90% задач фронтенда. Но периодически возникают
Рендер-функции и Teleport в Vue.js #почитать Декларативные шаблоны Vue решают 90% задач фронтенда. Но периодически возникают ситуации, где шаблонного синтаксиса оказывается мало. Нужен более тонкий контроль над рендерингом или возможность вынести часть компонента за пределы его естественной позиции в DOM-дереве. Для таких случаев Vue 3 послал нам render-функции и встроенный компонент Teleport. ⏱Читать статью
568
8
Практическая оптимизация React: ререндеры, Context, списки, INP и code splitting #почитать Оптимизация в React почти всегда с
Практическая оптимизация React: ререндеры, Context, списки, INP и code splitting #почитать Оптимизация в React почти всегда сводится к двум факторам: объёму работы, которую выполняет JavaScript, и частоте (а также «стоимости») перерисовок компонентов. Сам React работает достаточно быстро, но в крупных интерфейсах даже небольшие архитектурные промахи и на первый взгляд безобидные ререндеры начинают заметно бить по производительности. В данной статье мы расскажем про ключевые подходы к оптимизации React-приложений: как уменьшить количество лишних ререндеров, сократить объём вычислений при вводе и скролле и снизить нагрузку стартового JavaScript. ⏱Читать статью
670
9
JSDocs в VSCode #почитать В этой публикации я очень кратко раскрываю, почему переход с IntelliJ IDEA (PhpStorm) на VSCode лом
JSDocs в VSCode #почитать В этой публикации я очень кратко раскрываю, почему переход с IntelliJ IDEA (PhpStorm) на VSCode ломает привычную работу с JSDoc в JavaScript-проектах. ⏱Читать статью
566
10
Заменяем JS обычным HTML #почитать Уже многие годы JavaScript остаётся «рабочей лошадкой» веба. Если вам нужно сделать то, чт
Заменяем JS обычным HTML #почитать Уже многие годы JavaScript остаётся «рабочей лошадкой» веба. Если вам нужно сделать то, что невозможно реализовать средствами HTML и CSS, то обычно найти решение помогает JS. И это замечательно! JS помог расширить возможности пользователей, а также стимулировал прогресс HTML и CSS! Но время идёт, функции HTML и CSS расширяются, поэтому мы должны начать заменять старые и привычные решения на JS новыми, требующими меньше JS. Я ничего не имею против JS, но у него есть иные задачи, кроме как управление аккордеонами и внеэкранными меню навигации... Кроме того, JS нужно скачивать, распаковывать, обрабатывать, после чего он ещё часто тратит память на мониторинг и поддержку фич. Если мы сможем перенести какую-то функциональность JS в нативный HTML или CSS, тогда пользователям придётся скачивать меньше данных, а оставшийся JS сможет уделить внимание более важным задачам, с которыми (пока) не справляются HTML и CSS. ⏱Читать статью
651
11
Atomic CSS: верстка и легкость бытия #почитать Обсудим имеющиеся проблемы в верстке и посмотрим, как атомарный подход их реша
Atomic CSS: верстка и легкость бытия #почитать Обсудим имеющиеся проблемы в верстке и посмотрим, как атомарный подход их решает (или не решает). Разберем основные мифы, посмотрим на лучшие практики этого подхода и сделаем выводы. ⏱Читать статью
568
12
Реактивность без React или как обойтись без id в html элементах #почитать А зачем вообще обходиться без id? Даже не знаю, но
Реактивность без React или как обойтись без id в html элементах #почитать А зачем вообще обходиться без id? Даже не знаю, но это вполне возможно, и приложение будет живым и вполне себе «реактивным». А всю «магию» при этом творит функция, которую я назвал tokenize. Конечно же я, ни в коем случае, не настаиваю на отказе от id. "Элементарные" id никому не мешают и tokenize`у тоже. Но если обходиться без id, то как же получать ссылки на DOM элементы, для обращения к ним? Вот для этого и нужна функция tokenize, которая собирает референсы в удобную структуру с ветками, подветками и листьями (ссылками на DOM элементы). А вот как она это делает, мы с Вами сейчас и разберём. ⏱Читать статью
673
13
Типизация JavaScript через JSDoc #почитать Используете JSDoc для типизации JavaScript? Узнайте, как настроить TypeScript Comp
Типизация JavaScript через JSDoc #почитать Используете JSDoc для типизации JavaScript? Узнайте, как настроить TypeScript Compiler для профессиональной проверки типов, генерации деклараций и интеграции в процесс разработки. ⏱Читать статью
653
14
16 июля встречаемся с JS‑сообществом SberProfi в Сбер.Среде. AI уже меняет JavaScript‑разработку. Вопрос не в том, заменит ли
16 июля встречаемся с JS‑сообществом SberProfi в Сбер.Среде. AI уже меняет JavaScript‑разработку. Вопрос не в том, заменит ли он инженеров, а в том, кто освоит его быстрее и качественнее. 🔥 Обсудим изменения на реальных кейсах от Сбера, Cloud․ru и Mish. Очные участники увидят спецформат от блогеров и пообщаются с экспертами GigaCode и GitVerse. ⏳ Начало в 17:00, встреча очных гостей - в 16:00. Количество очных мест ограничено – успейте зарегистрироваться!
301
15
Обработчики событий в JavaScript #почитать Если коротко, вы узнаете о самом удобном способе управлять откликом на действия по
Обработчики событий в JavaScript #почитать Если коротко, вы узнаете о самом удобном способе управлять откликом на действия пользователя или браузера. ⏱Читать статью
614
16
🔍Тестовое собеседование на Frontend-разработчика с ex. TeamLead в Сбер 9 июля(в четверг!) в 19:00 по мск приходи онлайн на о
🔍Тестовое собеседование на Frontend-разработчика с ex. TeamLead в Сбер 9 июля(в четверг!) в 19:00 по мск приходи онлайн на открытое собеседование, чтобы посмотреть на настоящее интервью на Middle Frontend-разработчика. Как это будет: 📂 Даниил Дмитриев, старший разработчик в R-Vision, ex. TeamLead в Сбер, будет задавать реальные вопросы и задачи разработчику-добровольцу 📂 Даниил будет комментировать каждый ответ респондента, чтобы дать понять, чего от вас ожидает собеседующий на интервью 📂 В конце можно будет задать любой вопрос Даниилу Это бесплатно. Эфир проходит в рамках менторской программы от ШОРТКАТ для Frontend-разработчиков, которые хотят повысить свой грейд, ЗП и прокачать скиллы. Переходи в нашего бота, чтобы получить ссылку на эфир → @shortcut_front_bot Реклама. ООО «ШОРТКАТ». ИНН: 9731139396. Erid: 2W5zFFzazVo
585
17
Реактивность без фреймворков (просто эксперимент на чистом JS + Web APIs) #почитать Опишу пример, демонстрирующий, насколько
Реактивность без фреймворков (просто эксперимент на чистом JS + Web APIs) #почитать Опишу пример, демонстрирующий, насколько важна декларативность в вопросах управления поведением «аппки» (за этим стоят вопросы сохранения высокого уровня абстракции и, как следствие, масштабируемости приложения). Задача - сделать управление мутациями DOM более декларативным и, как заявлено в заголовке, использовать реактивность на примере управления состоянием. ⏱Читать статью
487
18
Настройка Jest и React Testing Library: пошаговое руководство для React и Next.js проектов #почитать В этой статье мы подробн
Настройка Jest и React Testing Library: пошаговое руководство для React и Next.js проектов #почитать В этой статье мы подробно рассмотрим процесс настройки среды unit-тестирования веб-приложений на базе React и Next.js с использованием Jest и React Testing Library. Расскажем об установке необходимых зависимостей, создании конфигурационных файлов, настройке Babel и TypeScript, подключении SCSS и SVG, а также организации структуры проекта. Особое внимание уделено специфике настройки Jest в среде Next.js. Материал будет полезен для frontend-разработчиков и команд разработки, которые работают с React или Next.js проектами и хотят внедрить качественное unit-тестирование. ⏱Читать статью
604
19
Насколько быстро браузеры могут обрабатывать данные в Base64? #почитать Недавно в браузерах появились удобные и безопасные фу
Насколько быстро браузеры могут обрабатывать данные в Base64? #почитать Недавно в браузерах появились удобные и безопасные функции для обработки Base64: Uint8Array.toBase64() и Uint8Array.fromBase64(). Хоть у них и есть множество параметров, смысл их сводится к кодированию и декодированию. При кодировании они берут 24 бита из входных данных и разделяют их на четыре сегмента по 6 бит, и каждое 6-битное значение (в интервале от 0 до 63) соотносится с конкретным символом из алфавита Base64: первые 26 символов — это буквы A-Z в верхнем регистре, следующие 26 — a-z в нижнем, затем идут цифры 0-9 и, наконец, символы «+» и «/» в качестве 62-го и 63-го символов. Если длина входных данных не кратна трём байтам, то в качестве заполнителя используется знак «=». ⏱Читать статью
571
20
Zod: строгая валидация и удобная типизация. Опыт перехода #почитать К Zod мы пришли не сразу. Долгое время типы и валидация у
Zod: строгая валидация и удобная типизация. Опыт перехода #почитать К Zod мы пришли не сразу. Долгое время типы и валидация у нас жили в разных слоях приложения: TypeScript определял структуру данных во время разработки, а отдельные функции или библиотеки (вроде Yup) проверяли входящие значения в рантайме. Это классическая проблема: дублирование логики и рассинхрон. Типы в interface поменялись, а валидация осталась прежней (или наоборот). Мы пробовали Yup, но он казался громоздким в связке с TS: типы приходилось выводить вручную или мириться с тем, что схемы выглядят непрозрачно. В какой-то момент стало непонятно: зачем тащить отдельную библиотеку, если проще написать if (typeof x === 'string')? С переходом на Zod всё стало значительно проще: одна схема одновременно является и валидатором, и источником типа данных. ⏱Читать статью
701