Frontender Libs - обзор библиотек JS / CSS – Telegram
Frontender Libs - обзор библиотек JS / CSS
8.1K subscribers
2.04K photos
735 videos
4 files
247 links
Админ, сотрудничество, реклама: @seniorFrontPromo, @maria_seniorfront

Купить рекламу: https://telega.in/c/sWebDev
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
JS | Встроенные связанные слайдеры

Слайдер, который можно перелистывать колесиком мыши довольно удобен, пока не возникает необходимость добавить в него еще один слайдер, в примере показа реализация встроенных слайдеров с использованием swiper.
PHP | PHPOffice

PHPOffice - набор пакетов для работы с различными офисными документами.

PHPWord - для текстовых документов в форматах doc, docx, otf, rtf

PhpSpreadsheet - для электронных таблиц xls ,xlsx, ods

PHPPresentation - для презентаций pptx, odp

Данные библиотеки позволяют как читать, так и создавать файлы в указанным форматах.
CSS директивы @supports и CSS.supports (JavaScript) помогут разработчикам определять справится ли браузер пользователя с CSS свойством или нет.

Синтаксис директивы @supports такой же, как и у @media запросов:
@supports(prop:value) {
/* стили */
}

Простая проверка свойства
@supports (display: flex) {
div { display: flex; }
}

Ключевое слово not
@supports в паре со словом not осуществляет проверку на отсутствие поддержки какого-либо свойства:
@supports not (display: flex) {
div { float: left; } /* задан альтернативный стиль */
}

Больше примеров использования и подробности в статье.
PHP | Php Inspections (EA Extended)

Если Вы используете PhpStorm, то наверняка пользуетесь различными инспекциями, которые позволяют держать Ваш код в порядке.

Php Inspections (EA Extended) - плагин для PhpStorm, который добавляет еще инспекций.
This media is not supported in your browser
VIEW IN TELEGRAM
JS | Как узнать что блок виден на экране

Intersection Observer API позволяет веб-приложениям асинхронно следить за изменением пересечения элемента с его родителем или областью видимости документа viewport, узнать сколько процентов блока видно на экране (0 не виден, 1.0 - полностью виден), выполнять коллбэк при достижении определенных процентов видимости блока.
CSS | Caniuse.com поможет с новыми технологиями

Caniuse.com не только может показать поддержку свойства в браузерами, но и подсказать вендорные префиксы, ссылки на полифиллы и известные проблемы.
PHP | Какая функция сортировки массива не сохраняет ключи?
Anonymous Quiz
17%
ksort()
33%
sort()
18%
natsort()
32%
asort()
JS | Структуры данных - стек и очередь

Стек хранит данные в последовательном порядке и удаляет последние добавленные данные.

Очередь также хранит данные в последовательном порядке, но удаляет самые старые элементы.

В статье рассказывается как в js реализовать эти структуры и показаны примеры применения.
CSS | Как контролировать Z-индексы в большом приложении

При разрастании проекта растет сложность интерфейса и контролировать z-индексы становится довольно сложно.

- Люди часто выбирают произвольно большие значения z-индекса;
- Исправления ошибок z-index часто приводят к новым;
- Связь между значениями z-index трудно отследить.

Стивен Фрисон (Stiven Frison) предлагает изящное решение этой проблемы:
const base = 0;
const above = 1;
const below = -1;

export const backdrop = below + dropdown;
export const dropdown = below + button;
export const button = base;

Решение основано на CSS-in-JS, но оно может быль реализовано с помощью препроцессоров или CSS с использованием переменных.

В этой системе каждый z-index имеет ровно такое значение, какое должно быть, и, поскольку оно выбирается динамически, вас не волнует, какое это значение на самом деле.
This media is not supported in your browser
VIEW IN TELEGRAM
Uniwidth шрифты

В интерфейсах используется множество состояний - не/выбрано, не/активно, не/доступно. Для стилизации состояний можно использовать font-weight. Однако, при переключении шрифта с обычного на жирный размеры блока могут изменится, что приведёт к смещению разметки, что может сломать pixel-perfect шаблон.

Решение этой проблемы: гарнитуры с «однолинейной» шириной. И нет, это не моноширинные шрифты.

Гарнитуры Uniwidth имеют большой потенциал для использования в интерактивных интерфейсах. Это краткая и удобная подборка некоторых доступных опций.
PHP | get_defined_vars

Чтобы узнать какие переменные доступны в текущей области видимости можно использовать функцию get_defined_vars()

Это бывает полезно, например, если вы используете include, или в шаблонах отображений, работающих на нативном php без применения шаблонизаторов со своим языком.
Что выведется в консоли?
Anonymous Quiz
13%
0
20%
1
28%
2
17%
3
23%
4
На рынке дефицит JS программистов

Чем быстрее начнешь - тем лучше, вот пошаговый план чтобы стать Фулстеком и получать от 80тр, прогая только на JS:

👉 Учим верстку и JS до продвинутого уровня

👉 Учим особенности Node.js

👉 Выбираем фреймворк (React / Angular / Vue)

👉 Пробегаемся по общими штукам (Git / Photoshop / Figma / Английский для IT)

💵 Трудоустраиваемся

Курс Fullstack-разработчик на JavaScript всё это включает, и пройти его можно за 12 месяцев со скидкой 50%
JS | Очередная порция однострочников

Генерация случайного числа в заданном диапазоне
const randomNumberInRange = (min, max) => Math.floor(Math.random() * (max - min + 1)) + min;

Переключение логического значения
const toggle = (value) => value = !value

Сортировка элементов массива в случайном порядке
const sortRandom = (arr) => arr.sort(() => Math.random() - 0.5)

И еще 12 однострочников с пояснениями в статье.
PHP | PHPIntelephense

PHPIntellephense - расширение для популярного редактора кода Visual Studio Code.

Расширение предоставляет такие IDE-like возможности как:
- Автодополнение кода, как стандартных классов и функций, так и по коду проекта
- Справка по классам и функциям по наведению
- Поиск функций, классов и методов по проекту
- И другие