ar
Feedback
WebDev+ | Веб-разработка

WebDev+ | Веб-разработка

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

Присоединяйтесь к нашему каналу и погрузитесь в мир веб-разработки Связь: @devmangx

إظهار المزيد
8 307
المشتركون
-424 ساعات
-277 أيام
-9130 أيام
أرشيف المشاركات
Знал, что в JavaScript можно так? Валидировать формы можно прямо через HTML-атрибуты. А сообщения об ошибках настраивать чере
Знал, что в JavaScript можно так? Валидировать формы можно прямо через HTML-атрибуты. А сообщения об ошибках настраивать через setCustomValidity. Без библиотек и с поддержкой во всех браузерах. @WebDev_Plus

Покажи календарь на сайте или в приложении без лишнего гемора. Называется Cally, и он годный: ✓ Мультиязычный ✓ Весит всего 9 KB ✓ Кастомизируется через CSS ✓ Работает с React, Angular, Vue и т.д. → npm install cally @WebDev_Plus

Искусственная задержка записи, например при отправке формы, может дать пользователю больше уверенности, что изменения действительно применились. В high-frequency приложениях вроде Linear это начинает раздражать, но для редких действий, типа отправки контактной формы, такой подход ощущается лучше, чем оптимистичное обновление. Можно использовать Promise.all, чтобы запускать мутацию и задержку параллельно. Тогда пользователь ждет только то, что дольше, а не сумму задержки и времени запроса.
// A minimum duration of `800ms`
const delay = new Promise((r) => setTimeout(r, 800));
await Promise.all([promise, delay]);
@WebDev_Plus

Плавно “затухай” текст или картинки. Одной строкой CSS, без лишних HTML-элементов... Просто используй mask-image @WebDev_Plus
Плавно “затухай” текст или картинки. Одной строкой CSS, без лишних HTML-элементов... Просто используй mask-image @WebDev_Plus

Хочешь легко загружать файлы на сайт? Эта JavaScript-библиотека как раз для этого. ✓ Минимальная настройка ✓ Аккуратные и настраиваемые CSS-стили ✓ Совместима с React, Vue, Angular и jQuery Установка → npm i filepond @WebDev_Plus

NZT существует. В фильме «Области тьмы» герой выпивает NZT — и за день становится трейдером, мастером кунг-фу и полиглотом. Дело не в таблетке. А в состоянии. Химия не нужна. Когда ум чист, внимание собрано, и сомнений нет — ты уже на NZT. Ты замечаешь всё. Действуешь без разрывов. И мир отвечает тебе. Как включить режим NZT? Подписывайся на Мэверика. • входи в состояние всё «получается само». • мгновенно принимай лучшие решения. • считывай сложные связи там, где все видят хаос. • управляй фокусом и вероятностями событий. Твоя таблетка NZT. 👇 Мэверик. Ясность. Точность. ㅤ

Мега-новинка в CSS Теперь можно делать анимации появления и исчезновения элементов. Знакомься с новым правилом starting-style. @WebDev_Plus

ИЗИ способ переключить сайт в тёмный режим. Используется анимация через View Transitions. Всего 2 строки на JavaScript и немного CSS: https://theme-toggle.rdsx.dev/ @WebDev_Plus

Разделители в хлебных крошках должны быть в CSS, а не в HTML. Просто используйте псевдоэлемент ::after. nav > ol > li:n
Разделители в хлебных крошках должны быть в CSS, а не в HTML. Просто используйте псевдоэлемент ::after.
nav > ol > li:not(:last-child)::after {
  content: " / ";
  color: lightgray;
  padding: 0 0.5em;
}
Селектор :not(:last-child) гарантирует, что после последнего элемента разделитель не появится. Разметка при этом остается аккуратной и чистой:
<nav>
  <ol>
    <li><a href="/">Home</a></li>
    <li><a href="/products">Products</a></li>
  </ol>
</nav>
Нужны другие разделители? Просто меняете content:
/* Шеврон */
li:not(:last-child)::after {
  content: " › ";
}

/* Стрелка */
li:not(:last-child)::after {
  content: " → ";
}

/* Вертикальная черта */
li:not(:last-child)::after {
  content: " | ";
}
Для иконок вместо текста можно использовать фоновое изображение:
li:not(:last-child)::after {
  content: "";
  width: 1em;
  height: 1em;
  background: url("data:image/svg+xml,...") center / contain no-repeat;
}
Этот подход универсальный и подходит для любых горизонтальных списков с разделителями: хлебные крошки, списки тегов, инлайн-метаданные. @WebDev_Plus

Программа для скачивания видео с более чем 1000 веб-сайтов на базе yt-dlp https://github.com/nexmoe/VidBee/ @WebDev_Plus
Программа для скачивания видео с более чем 1000 веб-сайтов на базе yt-dlp https://github.com/nexmoe/VidBee/ @WebDev_Plus

API шаблонов URL теперь доступен! С его помощью можно сопоставлять URL и извлекать из них части, не изобретая собственную лог
API шаблонов URL теперь доступен! С его помощью можно сопоставлять URL и извлекать из них части, не изобретая собственную логику роутинга. Поддерживаются литералы, подстановки, именованные группы и даже ограничения на основе регулярных выражений. Как это работает @WebDev_Plus

В open source выходит jax-js - библиотека машинного обучения для веба, полностью на чистом JavaScript. jax-js — первый ML-ком
В open source выходит jax-js - библиотека машинного обучения для веба, полностью на чистом JavaScript. jax-js — первый ML-компилятор, который работает прямо в браузере и генерирует быстрые WebGPU-ядра. Проект написан с нуля за последний год как личный сайд-проект. Подробности: https://ekzhang.substack.com/p/jax-js-an-ml-library-for-the-web Python и JavaScript - самые популярные языки в мире. Python нужен для ML, JavaScript — нативный язык веба. Проект пока на ранней стадии, но jax-js задумывается как по-настоящему «реальная ML-библиотека» для веба: с JIT-фьюжном ядер под WebGPU и полноценным API, а не просто рантайм. @WebDev_Plus

Прокачай любой UI красивыми анимированными фонами 🦄 Это open-source коллекция готовых компонентов анимированных фонов, которые можно сразу закидывать в проекты. Всё сделано на Tailwind CSS и JSX, поэтому они без боли встраиваются в современные React и Next.js воркфлоу. Можно посмотреть список компонентов, превью анимаций и сразу залезть в исходники, чтобы кастомизировать под себя или переиспользовать в своих приложениях :) github.com/Netmods/Drapes-ui @WebDev_Plus

Этот эффект на CSS и JavaScript просто огонь. Подсвечивает область, по которой проходит курсор. Очень трендовый приём в дизайне. Исходный код и демо здесь @WebDev_Plus

CSS-совет: Используй svh, чтобы мобильная адресная строка не перекрывала интерфейс. Эта единица гарантирует, что layout всегд
CSS-совет: Используй svh, чтобы мобильная адресная строка не перекрывала интерфейс. Эта единица гарантирует, что layout всегда помещается в реально видимую область экрана. @WebDev_Plus

В следующем обновлении языковых инструментов Vue выкатывают совершенно новую фичу Rich Hover Message. Наводишь курсор на любой Vue-компонент и сразу видишь аккуратно отформатированные Props и Slots, все генерируется автоматически. Сделано, чтобы прокачать DX на новый уровень. Подробности скоро, следите за обновлениями. @WebDev_Plus

+2
Ну всё, ребята. Этот день настал 😱 Popover на чистом CSS (элемент popover + анимации + привязка к якорю) теперь стабильно работает во всех базовых браузерах. И да, конечно, он уже доступен в CSS-Zero. Репозиторий: http://github.com/lazaronixon/css-zero Демо: https://csszero.lazaronixon.com/lookbook/inspect/popover/default @WebDev_Plus

Делись своим localhost с кем угодно за секунды через URL, доступный по всему миру, с HTTPS
$ brew install cloudflared
$ cloudflared tunnel --url <твой-локальный-домен>
Это альтернатива ngrok. Без регистрации и бесплатно @WebDev_Plus

Запускает GitHub Actions локально в VS Code. https://github.com/SanjulaGanepola/github-local-actions/ @WebDev_Plus
Запускает GitHub Actions локально в VS Code. https://github.com/SanjulaGanepola/github-local-actions/ @WebDev_Plus

Не допускайте появления растянутых изображений на вашем сайте. Это выглядит ужасно! И это легко исправить с помощью одной строки CSS @WebDev_Plus