Telegram Web Link
SOLID на front-end примерах

SOLID: Принцип единственной ответственности (простым языком с примерами на React)
Как разделить код на React компоненты правильно | Эволюция моего подхода | Компоненты по SOLID
SOLID: Как использовать DIP в реальном мире! | Объясняю с примерами на React
SOLID: Interface Segregation Principle! | Объясняю с примерами на React
SOLID: LSP или гайд по полиморфизму! | Любой костыль это нарушение LSP
Как не страдать, когда пришёл заказчик | OCP самый главный принцип SOLID!

источник

👉 @frontend_1
Media is too big
VIEW IN TELEGRAM
JavaScript должен поставляться с батарейками, автор Лука Касонато

Создание проектов на JavaScript - дело не из легких. Начало работы включает установку и настройку node, tsc, prettier, eslint, фреймворка для тестирования, драйвера базы данных и многого другого. Почему JavaScript не включен в комплект поставки? В этом докладе мы расскажем о том, как Deno решает эту проблему, позволяя вам сосредоточиться на создании вещей. Мы изучим, какие преимущества открывает полная интеграция инструментария, и вспомним, как весело программировать, если инструменты помогают вам, а не требуют, чтобы вы с ними нянчились.

источник

👉 @frontend_1
Совет по Javascript 💡

Возможно, вы не знаете, что мы можем передавать исходную ошибку, при этом повторно выбрасывая ошибку с полезным сообщением для лучшей отладки.

👉 @frontend_1
Готовимся к вопросам по вёрстке на интервью Frontend-разработчика: значения свойства display

Я продолжаю отвечать на вопросы из собеседований на должность фронтендера. Сегодня я отвечу на следующий вопрос: «В чём отличия между значениями block, inline, flex, inline-flex, grid и inline-grid для свойства display?»

Прошу внимания. Мой ответ будет основан на теории, которую я описал в статье «Зачем нужно использовать свойство display?». Прочитайте, пожалуйста, сначала её.

Последний технический момент. Во всех примерах я использую <body> в качестве родительского контейнера. На картинках он обозначен голубой пунктирной линией.

https://habr.com/ru/companies/ruvds/articles/806493/

👉 @frontend_1
This media is not supported in your browser
VIEW IN TELEGRAM
Эффекты мерцания с помощью CSS 🚀

1. Animate opacity
2. Use custom linear() timing 🔥

:root { --flicker: linear(0 0% 0.5%, 0.1723 0.7925% ... ); }
.flicker {
animation: dim 4s infinite var(--flicker) alternate;
}
@​keyframes dim { opacity: 0.25; }

👉 @frontend_1
This media is not supported in your browser
VIEW IN TELEGRAM
Люблю использовать CSS-анимацию, например, такую

.ring {
animation: float 2s infinite alternate var(--ease);
animation-delay: calc(
sin((var(--index) / var(--count)) * 45deg)
* -2s
);
}


👉 @frontend_1
This media is not supported in your browser
VIEW IN TELEGRAM
CSS трюк для раскрытия текста при прокрутке?

Объедините position: sticky с анимацией прокрутки.

Разделите текст на слова. Используйте значение «Pixel per character» для расчета начальной и конечной позиции прокрутки для каждого слова 🤙

👉 @frontend_1
Современный CSS очень хорош.

Отключить скролбар, когда этот диалог является одновременно модальным и открытым.
Никакого JS, никакого состояния, никаких классов, никаких меток aria — всего несколько строк CSS.

👉 @frontend_1
This media is not supported in your browser
VIEW IN TELEGRAM
Трюк по CSS

Вы можете создать этот сверкающий фон с помощью одного элемента, используя mask-composite, при этом анимируя mask-position.

.canvas {
background: var(--gradient);
mask: var(--dots), var(--noise);
mask-composite: intersect /* source-in, xor */;
animation: flicker;
}
@​keyframes flicker {
to { mask-position: 50% 50% , 0 50%; }
}


Хитрость заключается в том, чтобы наложить маски друг на друга, а затем использовать значение intersect для mask-composite.
Intersect работает так же, как и в SVG, объединяя маски и беря их пересечение.

Маска dots — это базовый radial-gradient, который повторяется по всему элементу. Маска noise — сгенерированное изображение шума Перлина.

mask: radial-gradient(circle at 50% 50%, white 2px, transparent 2.5px) 50% 50% / 40px 40px;

mask: url("noise.png") 50% 50% / 256px 256px;

https://codepen.io/jh3y/pen/ExrWOJe

👉 @frontend_1
Рефлексия в JavaScript и TypeScript: обзор основных техник. Как сгенерировать CLI-интерфейс для класса

Как и в любом достаточно динамическом языке, в JavaScript из коробки есть способы разобрать в рантайме структуру его значений — определить типы, ключи объектов, получить конструкторы и прототипы.

В этой статье я хочу рассмотреть основные такие возможности, плюс показать, как можно получить ещё больше информации о типах при использовании TypeScript, и как добавить классам и их полям собственные метаданные при помощи декораторов. Каждую из техник я покажу на примере небольшого CLI-фреймворка, работа с которым к концу статьи будет выглядеть как на картинке:

https://habr.com/ru/companies/ruvds/articles/754764/

👉 @frontend_1
This media is not supported in your browser
VIEW IN TELEGRAM
Вы можете использовать CSS-анимацию с прокруткой, например, IntersectionObserver от JavaScript 🤙

img {
animation: reveal;
animation-timeline: view();
animation-range: entry 0% entry 150%;
}
@​keyframes reveal { 0% {
opacity: 0;
filter: brightness(2);
scale: 0.9;
}}

👉 @frontend_1
Записываем музыку при помощи CSS Grid

Слишком часто я наблюдал за тем, как импровизирующий музыкант трясущимися руками пытается увеличить pdf размером A4 на крошечном экране телефона в самом разгаре исполнения. Мы обязаны создать плавный и отзывчивый рендеринг музыки для веба!

В вебе нотная запись должна быть столь же доступной и плавной, как текст; однако пока это не так, и это уязвляет мои чувства. Давайте решим эту актуальную проблему.

https://cruncher.ch/blog/printing-music-with-css-grid/

👉 @frontend_1
Подборка Telegram каналов для программистов

Системное администрирование 📌
https://www.tg-me.com/tipsysdmin Типичный Сисадмин (фото железа, было/стало)
https://www.tg-me.com/sysadminof Книги для админов, полезные материалы
https://www.tg-me.com/i_odmin Все для системного администратора
https://www.tg-me.com/i_odmin_book Библиотека Системного Администратора
https://www.tg-me.com/i_odmin_chat Чат системных администраторов
https://www.tg-me.com/i_DevOps DevOps: Пишем о Docker, Kubernetes и др.
https://www.tg-me.com/sysadminoff Новости Линукс Linux


https://www.tg-me.com/tikon_1 Новости высоких технологий, науки и техники💡
https://www.tg-me.com/mir_teh Мир технологий (Technology World)

https://www.tg-me.com/rust_lib Полезный контент по программированию на Rust
https://www.tg-me.com/golang_lib Библиотека Go (Golang) разработчика

https://www.tg-me.com/itmozg Программисты, дизайнеры, новости из мира IT.
https://www.tg-me.com/phis_mat Обучающие видео, книги по Физике и Математике

https://www.tg-me.com/php_lib Библиотека PHP программиста 👨🏼‍💻👩‍💻
https://www.tg-me.com/nodejs_lib Подборки по Node js и все что с ним связано
https://www.tg-me.com/ruby_lib Библиотека Ruby программиста

1C разработка 📌
https://www.tg-me.com/odin1C_rus Cтатьи, курсы, советы, шаблоны кода 1С

Программирование C++📌
https://www.tg-me.com/cpp_lib Библиотека C/C++ разработчика
https://www.tg-me.com/cpp_knigi Книги для программистов C/C++
https://www.tg-me.com/cpp_geek Учим C/C++ на примерах

Программирование Python 📌
https://www.tg-me.com/pythonofff Python академия. Учи Python быстро и легко🐍
https://www.tg-me.com/BookPython Библиотека Python разработчика
https://www.tg-me.com/python_real Python подборки на русском и английском
https://www.tg-me.com/python_360 Книги по Python Rus

Java разработка 📌
https://www.tg-me.com/BookJava Библиотека Java разработчика
https://www.tg-me.com/java_360 Книги по Java Rus
https://www.tg-me.com/java_geek Учим Java на примерах

GitHub Сообщество 📌
https://www.tg-me.com/Githublib Интересное из GitHub

Базы данных (Data Base) 📌
https://www.tg-me.com/database_info Все про базы данных

Мобильная разработка: iOS, Android 📌
https://www.tg-me.com/developer_mobila Мобильная разработка
https://www.tg-me.com/kotlin_lib Подборки полезного материала по Kotlin

Фронтенд разработка 📌
https://www.tg-me.com/frontend_1 Подборки для frontend разработчиков
https://www.tg-me.com/frontend_sovet Frontend советы, примеры и практика!
https://www.tg-me.com/React_lib Подборки по React js и все что с ним связано

Разработка игр 📌
https://www.tg-me.com/game_devv Все о разработке игр

Вакансии 📌
https://www.tg-me.com/sysadmin_rabota Системный Администратор
https://www.tg-me.com/progjob Вакансии в IT

Чат программистов📌
https://www.tg-me.com/developers_ru

Библиотеки 📌
https://www.tg-me.com/book_for_dev Книги для программистов Rus
https://www.tg-me.com/programmist_of Книги по программированию
https://www.tg-me.com/proglb Библиотека программиста
https://www.tg-me.com/bfbook Книги для программистов
https://www.tg-me.com/books_reserv Книги для программистов

БигДата, машинное обучение 📌
https://www.tg-me.com/bigdata_1 Data Science, Big Data, Machine Learning, Deep Learning

Программирование 📌
https://www.tg-me.com/bookflow Лекции, видеоуроки, доклады с IT конференций
https://www.tg-me.com/coddy_academy Полезные советы по программированию

QA, тестирование 📌
https://www.tg-me.com/testlab_qa Библиотека тестировщика

Шутки программистов 📌
https://www.tg-me.com/itumor Шутки программистов

Защита, взлом, безопасность 📌
https://www.tg-me.com/thehaking Канал о кибербезопасности
https://www.tg-me.com/xakep_1 Статьи из "Хакера"

Книги, статьи для дизайнеров 📌
https://www.tg-me.com/ux_web Статьи, книги для дизайнеров

Английский 📌
https://www.tg-me.com/UchuEnglish Английский с нуля

Математика 📌
https://www.tg-me.com/Pomatematike Канал по математике

Excel лайфхак📌
https://www.tg-me.com/Excel_lifehack
This media is not supported in your browser
VIEW IN TELEGRAM
Создание отзывчивого макета с помощью HTML и CSS flex 🚀

https://github.com/atherosai/ui/tree/main/layout-03

👉 @frontend_1
2025/07/07 04:07:49
Back to Top
HTML Embed Code: