Web Stack
4.08K subscribers
855 photos
5 videos
1.82K links
Дайджест web разработчика: статьи, туториалы, практики и полезные инструменты.

Админ: @jem_jem
Реклама: http://bit.ly/2wZeIPj

👉 Дайджест мобильной разработки @mobile_dvlp
Download Telegram
Deno присоединяется к Cloudflare для self-hosting Workers

Deno и Cloudflare объединяют усилия, чтобы упростить self-hosting Workers и Durable Objects и дать разработчикам один и тот же набор примитивов в большем числе окружений. Это важно, потому что такой подход снимает часть зависимости от одного провайдера и делает перенос и запуск приложений на своей инфраструктуре реальнее без смены модели разработки.

celld и workerd станут основой для более удобной поддержки self-hosting, а в проекте будут использовать идеи и код из celld. Для разработчика это означает, что можно будет строить приложения в стиле Workers и при этом запускать их не только у Cloudflare, но и в собственном окружении.

https://blog.cloudflare.com/deno-joins-cloudflare/
👍4❤1
Cloudflare Clef: модель для принятия решений по состоянию, а не генерации текста

Clef — это модель, которая превращает состояние системы в набор решений по заранее заданным вопросам. Она читает вход как текст, JSON, изображения или видео и за один проход возвращает вероятности по всем допустимым вариантам, без генерации свободного текста и без парсинга ответа.

Для веб-приложений это полезно там, где нужен предсказуемый выбор: маршрутизация обращений, разбор инцидентов, обработка инвойсов, оценка срочности или классификация по бизнес-правилам. Модель совместима с Jev и SystemOne, умеет работать через SGLang, а для более дешёвого и быстрого варианта есть Clef-Flash.

https://huggingface.co/Cloudflare/clef
🔥4
Edge Functions стали в 5 раз быстрее благодаря MicroVMs

Netlify перевёл Edge Functions с v8 isolates на MicroVMs внутри своей edge-сети, чтобы снизить задержку, повысить надёжность и ускорить доставку логов. На тёплом вызове это дало примерно 5–6 мс вместо 25–40 мс на старой инфраструктуре, а изоляция на уровне MicroVMs лучше защищает разные деплои друг от друга.

https://www.netlify.com/blog/edge-functions-firecracker-microvms/
Анатомия уязвимостей API по OWASP API Security Top 10

OWASP API Security Top 10 показывает не только сами уязвимости, но и какие инженерные решения обычно приводят к их появлению. Это полезно тем, кто проектирует и пишет API: список помогает заранее закрывать типовые дыры вроде BOLA, слабой аутентификации, SSRF и ошибок в авторизации на уровне объектов и функций.

https://www.freecodecamp.org/news/engineering-anatomy-of-api-vulnerabilities-owasp-api-security-top-10/
👍3❤1
Как ускорить страницу с демо-видео и уложиться в 400 КБ на первом экране

Демо-видео на первом экране можно сделать быстрым, если отдельно оптимизировать сам ролик, постер и момент запуска. В этом кейсе страница стала грузить около 400 КБ вместо 3,1 МБ: видео сжали с 38 до 1,8 МБ, постер перевели в WebP, а автозапуск перенесли на первое действие пользователя, чтобы не тормозить LCP.

https://habr.com/ru/articles/1090594/
👍4
Nuxt 4.6: шаг к независимости от Nitro и новый CLI

Nuxt 4.6 делает фреймворк заметно гибче для fullstack Vue-приложений: серверный слой больше не привязан жестко к Nitro, а сборка сервера через чистый Vite теперь доступна как экспериментальный вариант. Это упрощает выбор стека под проект и снижает зависимость от конкретной серверной обвязки, а встроенные сессии, поддержка Vue Vapor и новый Nuxt CLI 4.0 добавляют удобства в повседневной разработке.

https://nuxt.com/blog/v4-6
❤4
npm staged publishing теперь умеет создавать новые пакеты

npm staged publishing теперь позволяет создавать новый npm package без ручного первого publish и подходит для автоматизированных workflows. Для этого можно использовать local session или granular access token, включая stage-only token; первая версия попадает в staged queue и становится доступной только после промоушена мейнтейнером.

https://github.blog/changelog/2026-10-02-npm-staged-publishing-now-supports-creating-new-packages/
👏3👍1
diffnav: просмотр git diff в терминале с деревом файлов

diffnav — терминальный pager для git diff с подсветкой синтаксиса и деревом файлов, как в интерфейсе GitHub. Он помогает быстрее ориентироваться в больших изменениях: видно, какие файлы затронуты, и можно сразу перейти к нужному месту в diff без лишнего скролла.

https://github.com/dlvhdr/diffnav
🔥4
AI-виджет поддержки, который сам заводит баги в GitHub

Показан рабочий способ собрать виджет поддержки для React и Next.js, который принимает баги, вопросы и идеи, сохраняет их в своей базе, а потом помогает вручную отправлять только подтвержденные баги в GitHub. Такой подход нужен, чтобы не терять обращения из разных каналов и не создавать публичные issue с лишними личными данными.

https://www.freecodecamp.org/news/build-an-ai-support-system-that-automatically-routes-bugs-to-github/
❤6
Сниппет для поиска N+1 в Laravel

Когда N+1 прячется в шаблоне или ресурсе, его легко не заметить на локальной базе. Этот сниппет считает повторяющиеся SQL-запросы за один HTTP-запрос и помогает поймать регрессии до того, как они попадут в прод.

use Illuminate\Database\Events\QueryExecuted;
use Illuminate\Support\Facades\DB;

public function boot(): void
{
if ($this->app->isProduction()) {
return;
}

$seen = [];

DB::listen(function (QueryExecuted $query) use (&$seen) {
$seen[$query->sql] = ($seen[$query->sql] ?? 0) + 1;
});
}


Учтите: запросы с разными значениями параметров здесь считаются одним и тем же SQL, а порог повторов нужно подбирать под ваш проект.

https://habr.com/ru/articles/1101198/
❤4🔥1
Biome 2.6 добавил форматирование Markdown, YAML и SCSS

Biome 2.6, Rust-рантайм для форматирования и линтинга, научился приводить к общему стилю Markdown, YAML и SCSS. Для JavaScript-проектов также открыли предварительный доступ к плагинам с собственными правилами линта.

Поддержка линтинга для этих форматов пока начальная, а плагины для JavaScript ещё в developer preview. Если вы хотите заменить связку Prettier и ESLint одним инструментом, сначала проверьте, хватает ли ему ваших правил и конфигов.

https://biomejs.dev/blog/biome-v2-6/
🔥2
CSS-Tricks собрал новые приёмы для CSS

Вышел свежий выпуск подборки CSS-Tricks с refraction-эффектами, scroll-state queries, @custom-media и другими новинками платформы. Внутри показывают, как собирать такие эффекты почти без JavaScript и где уже можно опираться на новые возможности браузеров.

Часть приёмов работает не везде, а для некоторых нужен Chrome или свежие реализации контейнерных и scroll queries. Если вы используете такие техники в интерфейсе, проверьте поддержку и держите запасной вариант для Firefox и старых браузеров.

https://css-tricks.com/whats-important-19/
🔥2