Web Stack
前往频道在 Telegram
Дайджест web разработчика: статьи, туториалы, практики и полезные инструменты. Админ: @jem_jem Реклама: http://bit.ly/2wZeIPj 👉 Дайджест мобильной разработки @mobile_dvlp
显示更多4 085
订阅者
-324 小时
-107 天
-1830 天
正在加载数据
吸引订阅者
十月 '2610月 '26
十月 '26
+9
在0个频道中
九月 '260
在0个频道中
Get PRO
八月 '260
在0个频道中
Get PRO
七月 '260
在0个频道中
Get PRO
六月 '260
在0个频道中
Get PRO
五月 '260
在0个频道中
Get PRO
四月 '260
在1个频道中
Get PRO
三月 '260
在0个频道中
Get PRO
二月 '260
在0个频道中
Get PRO
一月 '260
在0个频道中
Get PRO
十二月 '250
在0个频道中
Get PRO
十一月 '250
在0个频道中
Get PRO
十月 '250
在0个频道中
Get PRO
九月 '250
在0个频道中
Get PRO
八月 '250
在0个频道中
Get PRO
七月 '250
在0个频道中
Get PRO
六月 '250
在0个频道中
Get PRO
五月 '250
在1个频道中
Get PRO
四月 '250
在1个频道中
Get PRO
三月 '250
在1个频道中
Get PRO
二月 '250
在0个频道中
Get PRO
一月 '250
在0个频道中
Get PRO
十二月 '24
+12
在0个频道中
Get PRO
十一月 '24
+20
在0个频道中
Get PRO
十月 '24
+26
在2个频道中
Get PRO
九月 '24
+5
在0个频道中
Get PRO
八月 '240
在1个频道中
Get PRO
七月 '24
+4
在0个频道中
Get PRO
六月 '24
+2
在0个频道中
Get PRO
五月 '24
+8
在0个频道中
Get PRO
四月 '24
+12
在0个频道中
Get PRO
三月 '24
+9
在0个频道中
Get PRO
二月 '24
+46
在0个频道中
Get PRO
一月 '24
+73
在0个频道中
Get PRO
十二月 '23
+61
在0个频道中
Get PRO
十一月 '23
+28
在0个频道中
Get PRO
十月 '23
+96
在2个频道中
Get PRO
九月 '23
+26
在0个频道中
Get PRO
八月 '23
+17
在0个频道中
Get PRO
七月 '23
+16
在0个频道中
Get PRO
六月 '23
+18
在0个频道中
Get PRO
五月 '23
+19
在0个频道中
Get PRO
四月 '23
+49
在0个频道中
Get PRO
三月 '23
+55
在0个频道中
Get PRO
二月 '23
+56
在0个频道中
Get PRO
一月 '23
+103
在0个频道中
Get PRO
十二月 '22
+58
在0个频道中
Get PRO
十一月 '22
+105
在0个频道中
Get PRO
十月 '22
+106
在0个频道中
Get PRO
九月 '22
+104
在0个频道中
Get PRO
八月 '22
+87
在0个频道中
Get PRO
七月 '22
+87
在0个频道中
Get PRO
六月 '22
+88
在0个频道中
Get PRO
五月 '22
+98
在0个频道中
Get PRO
四月 '22
+84
在0个频道中
Get PRO
三月 '22
+68
在0个频道中
Get PRO
二月 '22
+74
在0个频道中
Get PRO
一月 '22
+73
在0个频道中
Get PRO
十二月 '21
+50
在0个频道中
Get PRO
十一月 '21
+226
在0个频道中
Get PRO
十月 '21
+70
在0个频道中
Get PRO
九月 '21
+59
在0个频道中
Get PRO
八月 '21
+78
在0个频道中
Get PRO
七月 '21
+195
在0个频道中
Get PRO
六月 '21
+245
在0个频道中
Get PRO
五月 '21
+116
在0个频道中
Get PRO
四月 '21
+101
在0个频道中
Get PRO
三月 '21
+257
在0个频道中
Get PRO
二月 '21
+210
在0个频道中
Get PRO
一月 '21
+135
在0个频道中
Get PRO
十二月 '20
+6 971
在0个频道中
| 日期 | 订阅者增长 | 提及 | 频道 | |
| 26 十月 | 0 | |||
| 25 十月 | 0 | |||
| 24 十月 | 0 | |||
| 23 十月 | 0 | |||
| 22 十月 | 0 | |||
| 21 十月 | 0 | |||
| 20 十月 | +1 | |||
| 19 十月 | +1 | |||
| 18 十月 | 0 | |||
| 17 十月 | +1 | |||
| 16 十月 | +1 | |||
| 15 十月 | 0 | |||
| 14 十月 | 0 | |||
| 13 十月 | 0 | |||
| 12 十月 | +1 | |||
| 11 十月 | +2 |
频道帖子
AI-виджет поддержки, который сам заводит баги в GitHub
Показан рабочий способ собрать виджет поддержки для React и Next.js, который принимает баги, вопросы и идеи, сохраняет их в своей базе, а потом помогает вручную отправлять только подтвержденные баги в GitHub. Такой подход нужен, чтобы не терять обращения из разных каналов и не создавать публичные issue с лишними личными данными.
https://www.freecodecamp.org/news/build-an-ai-support-system-that-automatically-routes-bugs-to-github/
| 2 | diffnav: просмотр git diff в терминале с деревом файлов
diffnav — терминальный pager для git diff с подсветкой синтаксиса и деревом файлов, как в интерфейсе GitHub. Он помогает быстрее ориентироваться в больших изменениях: видно, какие файлы затронуты, и можно сразу перейти к нужному месту в diff без лишнего скролла.
https://github.com/dlvhdr/diffnav | 230 |
| 3 | 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/ | 286 |
| 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 | 299 |
| 5 | Как ускорить страницу с демо-видео и уложиться в 400 КБ на первом экране
Демо-видео на первом экране можно сделать быстрым, если отдельно оптимизировать сам ролик, постер и момент запуска. В этом кейсе страница стала грузить около 400 КБ вместо 3,1 МБ: видео сжали с 38 до 1,8 МБ, постер перевели в WebP, а автозапуск перенесли на первое действие пользователя, чтобы не тормозить LCP.
https://habr.com/ru/articles/1090594/ | 340 |
| 6 | Анатомия уязвимостей 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/ | 395 |
| 7 | 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/ | 352 |
| 8 | Cloudflare Clef: модель для принятия решений по состоянию, а не генерации текста
Clef — это модель, которая превращает состояние системы в набор решений по заранее заданным вопросам. Она читает вход как текст, JSON, изображения или видео и за один проход возвращает вероятности по всем допустимым вариантам, без генерации свободного текста и без парсинга ответа.
Для веб-приложений это полезно там, где нужен предсказуемый выбор: маршрутизация обращений, разбор инцидентов, обработка инвойсов, оценка срочности или классификация по бизнес-правилам. Модель совместима с Jev и SystemOne, умеет работать через SGLang, а для более дешёвого и быстрого варианта есть Clef-Flash.
https://huggingface.co/Cloudflare/clef?ref=console.dev | 365 |
| 9 | 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/ | 348 |
| 10 | Bun 1.4.3: встроенная проверка типов и ускорение сборки
Bun v1.4.3 добавляет bun check, встроенную проверку TypeScript, которая в реальных проектах работает в несколько раз быстрее tsc и заметно экономит память. Для повседневной разработки это значит более быстрый фидбек в bun run --check, bun test --check и bun build --check, когда ошибки типов ловятся до запуска кода или сборки.
Обновление также ускоряет node:http на больших ответах, JSON.parse, обработку отклонённых Promise, снижает простой CPU и память у bun build, а ещё добавляет Bun.FetchSession, экспериментальный Bun.ModuleGraph, поддержку If-Range в Bun.serve и новые опции вроде --disallow-code-generation-from-strings.
https://bun.com/blog/bun-v1.4.3 | 383 |
| 11 | Cloudflare K2: serverless event streams
Cloudflare K2 — это сервис потоковой доставки событий, который хранит данные как упорядоченный лог и позволяет читать их нескольким потребителям независимо друг от друга. Он полезен там, где нужно не терять события при пиках нагрузки, сбоях или долгой недоступности downstream-сервисов, а ещё держать историю данных без собственного кластера брокеров.
K2 построен поверх R2, поэтому отделяет вычисления от хранения и масштабируется без ручного управления инфраструктурой. Для продукта это означает более дешёвое и долговечное хранение, а на практике — удобный буфер для аналитики, антифрода, фоновой обработки и fan-out сценариев, где один поток событий читают сразу несколько систем.
https://blog.cloudflare.com/cloudflare-k2-streams/?ref=console.dev | 391 |
| 12 | Как рисовать system design диаграммы на Python
Diagrams позволяет описывать архитектуру приложения кодом вместо ручной отрисовки: вы задаёте узлы, связи и группы, а на выходе получаете готовую схему. Это удобно для документации, потому что такие диаграммы легче хранить в Git, обновлять вместе с кодом и генерировать автоматически в CI/CD или при сборке документации.
Для работы нужны Python 3.7+, pip и Graphviz, после чего библиотека ставится через pip install diagrams. В коде используются Diagram, узлы вроде EC2, стрелки >>, <<, - для направления потока и Cluster для группировки слоёв, окружений или сервисов.
https://www.freecodecamp.org/news/how-to-create-system-design-diagrams-using-python/ | 389 |
| 13 | TanStack Router для React: типобезопасная маршрутизация, загрузчики и защита роутов
TanStack Router даёт маршрутизацию для современных React-приложений с полной типобезопасностью, автогенерацией routeTree.gen.ts, ленивой загрузкой и работой с query-параметрами без ручного парсинга строк. Это полезно, когда нужно ловить ошибки в путях и параметрах на этапе сборки, а не в проде, и при этом держать навигацию, загрузку данных и доступ к защищённым страницам в одном месте.
На практике это помогает собрать приложение с вложенными layout'ами, loader, useLoaderData, beforeLoad, router.invalidate() и защитой роутов, не утопая в useEffect и лишнем boilerplate. Для React-разработчика это хороший способ сделать роутинг чище, быстрее и удобнее для масштабирования.
https://www.freecodecamp.org/news/master-modern-react-routing-tanstack-router-crash-course/ | 482 |
| 14 | Size Limit: контроль размера и скорости JS-бандла в CI
Инструмент Size Limit измеряет не только размер JS, но и реальную стоимость его загрузки и выполнения в браузере. Его удобно подключать в GitHub Actions или другой CI, чтобы пул-реквесты не протаскивали тяжёлые зависимости и не ухудшали производительность.
https://github.com/ai/size-limit?ref=console.dev | 492 |
| 15 | Как строить масштабируемые AI-автоматизации в n8n
n8n помогает собирать не только простые связки сервисов, а рабочие автоматизации для продакшена с вебхуками, self-hosted-развёртыванием, обработкой REST API и кастомным JavaScript для очистки и преобразования данных.
Плюс в том, что на его базе можно строить AI-пайплайны: извлекать структуру из документов, подключать LLM, делать агентов с памятью, собирать цепочки из нескольких агентов и добавлять ручные approvals, ретраи и мониторинг, чтобы это не ломалось на реальных нагрузках.
https://www.freecodecamp.org/news/create-scalable-ai-automations-with-n8n/ | 470 |
| 16 | Beta: Oxynote — документация API в стиле Stripe
Oxynote — это подход к API-документации в стиле Stripe, который помогает быстро собрать понятные и аккуратные справочные страницы для продукта. Он полезен, когда нужно не просто перечислить эндпоинты, а показать разработчику, как с ними работать без лишней возни.
Для команды это значит меньше времени на ручную верстку и поддержку документации, а для пользователей API — более предсказуемый и удобный опыт. Такой формат особенно пригодится, если вы строите публичный API и хотите, чтобы интеграция проходила без лишних вопросов.
https://github.com/oxynote/oxynote | 463 |
| 17 | CSS Anchor Positioning: как привязывать элементы к другим элементам
CSS Anchor Positioning позволяет позиционировать один absolute-элемент относительно другого элемента-якоря, даже если они находятся в разных ветках DOM. Это полезно для попапов, подсказок, меню и любых интерфейсных связок, где нужно держать элемент рядом с триггером без ручных пересчётов координат.
Вместо привязки к контейнеру используются anchor-name, position-anchor, position-area и anchor(): ими можно выбрать якорь, задать сторону и точно совместить границы элементов. В Chrome это уже работает с мая 2024 года, а на практике даёт более надёжную и гибкую альтернативу ручному position: absolute для связанных UI-элементов.
https://habr.com/ru/articles/1092540/ | 431 |
| 18 | TanStack Charts: типизированная библиотека для графиков в React
TanStack Charts даёт грамматику для графиков на SVG и Canvas, где можно собирать marks, scales, transforms, interactions и анимации из компактных примитивов или через совместимые с D3 входы. Это полезно, когда нужен не просто готовый chart component, а гибкая основа, которую не придётся менять при росте продукта.
У библиотеки стабильный API в версии 1.0, строгая типизация и tree-shaking, а базовый React line chart весит 32.1 kB gzip. Canvas можно подключать точечно для тяжёлых графиков, при этом оси, тултипы, hydration, responsive layout и экспорт продолжают работать через одну и ту же схему описания.
https://tanstack.com/charts/latest?ref=console.dev | 435 |
| 19 | Как Cloudflare Radar упростили для широкой аудитории
Cloudflare Radar получил редизайн, чтобы данные о глобальном трафике и сбоях в интернете было проще читать не только инженерам, но и журналистам, исследователям и обычным пользователям. В новой версии сделали акцент на map как на понятной точке входа и перевели блоки с данными в более структурированный tabbed-поток, чтобы не перегружать страницу и сохранить глубину информации.
Для веб-разработчика здесь важен сам подход: сложный data product можно сделать заметно понятнее, если выстроить иерархию, опереться на знакомые паттерны и привести интерфейс к общей дизайн-системе. Это хороший пример того, как редизайн влияет не только на внешний вид, но и на доверие, навигацию и то, насколько охотно пользователи будут возвращаться к продукту.
https://blog.cloudflare.com/radar-redesign/ | 489 |
| 20 | Профилирование CPU и памяти в Workers и Durable Objects по запросу
Cloudflare добавила профилирование CPU и памяти для Workers и Durable Objects прямо в продакшене. Это даёт flamegraph, где видно, какая функция съедает время или память, и помогает быстрее находить утечки, лишние вычисления и причины OOM. Профиль можно снять из Dashboard или через CLI, а затем скачать файл и разобрать его дальше. Для TypeScript важно включить source maps, иначе имена функций в профиле будут плохо читаемыми.
https://blog.cloudflare.com/workers-on-demand-profiling/ | 468 |
