WebDev+ | Веб-разработка
رفتن به کانال در Telegram
Присоединяйтесь к нашему каналу и погрузитесь в мир веб-разработки Связь: @devmangx
نمایش بیشتر8 272
مشترکین
-624 ساعت
-147 روز
-8330 روز
در حال بارگیری داده...
کانالهای مشابه
ابر برچسبها
اشارات ورودی و خروجی
---
---
---
---
---
---
جذب مشترکین
ژوئن '26
ژوئن '26
+35
در 2 کانالها
مه '26
+43
در 0 کانالها
Get PRO
آوریل '26
+40
در 0 کانالها
Get PRO
مارس '26
+34
در 0 کانالها
Get PRO
فوریه '26
+26
در 3 کانالها
Get PRO
ژانویه '26
+42
در 3 کانالها
Get PRO
دسامبر '25
+200
در 9 کانالها
Get PRO
نوامبر '25
+504
در 316 کانالها
Get PRO
اکتبر '25
+24
در 0 کانالها
Get PRO
سپتامبر '25
+49
در 1 کانالها
Get PRO
اوت '25
+63
در 0 کانالها
Get PRO
ژوئیه '25
+828
در 282 کانالها
Get PRO
ژوئن '25
+323
در 1 کانالها
Get PRO
مه '25
+205
در 0 کانالها
Get PRO
آوریل '25
+1 473
در 0 کانالها
Get PRO
مارس '25
+674
در 0 کانالها
Get PRO
فوریه '25
+470
در 0 کانالها
Get PRO
ژانویه '25
+69
در 0 کانالها
Get PRO
دسامبر '24
+74
در 0 کانالها
Get PRO
نوامبر '24
+14
در 0 کانالها
Get PRO
اکتبر '24
+24
در 0 کانالها
Get PRO
سپتامبر '24
+18
در 0 کانالها
Get PRO
اوت '24
+43
در 0 کانالها
Get PRO
ژوئیه '24
+93
در 0 کانالها
Get PRO
ژوئن '24
+58
در 0 کانالها
Get PRO
مه '24
+84
در 0 کانالها
Get PRO
آوریل '24
+105
در 0 کانالها
Get PRO
مارس '24
+100
در 0 کانالها
Get PRO
فوریه '24
+121
در 0 کانالها
Get PRO
ژانویه '24
+159
در 0 کانالها
Get PRO
دسامبر '23
+199
در 0 کانالها
Get PRO
نوامبر '23
+351
در 0 کانالها
Get PRO
اکتبر '23
+291
در 0 کانالها
Get PRO
سپتامبر '23
+583
در 0 کانالها
Get PRO
اوت '23
+1 008
در 0 کانالها
Get PRO
ژوئیه '23
+1 427
در 0 کانالها
Get PRO
ژوئن '23
+912
در 0 کانالها
Get PRO
مه '23
+404
در 0 کانالها
Get PRO
آوریل '23
+287
در 0 کانالها
Get PRO
مارس '23
+154
در 0 کانالها
Get PRO
فوریه '23
+68
در 0 کانالها
Get PRO
ژانویه '23
+57
در 0 کانالها
Get PRO
دسامبر '22
+78
در 0 کانالها
Get PRO
نوامبر '22
+292
در 0 کانالها
Get PRO
اکتبر '22
+100
در 0 کانالها
Get PRO
سپتامبر '22
+116
در 0 کانالها
Get PRO
اوت '22
+86
در 0 کانالها
Get PRO
ژوئیه '22
+116
در 0 کانالها
Get PRO
ژوئن '22
+127
در 0 کانالها
Get PRO
مه '22
+129
در 0 کانالها
Get PRO
آوریل '22
+137
در 0 کانالها
Get PRO
مارس '22
+168
در 0 کانالها
Get PRO
فوریه '22
+164
در 0 کانالها
Get PRO
ژانویه '22
+270
در 0 کانالها
Get PRO
دسامبر '21
+258
در 0 کانالها
Get PRO
نوامبر '21
+508
در 0 کانالها
Get PRO
اکتبر '21
+309
در 0 کانالها
Get PRO
سپتامبر '21
+309
در 0 کانالها
Get PRO
اوت '21
+80
در 0 کانالها
Get PRO
ژوئیه '21
+166
در 0 کانالها
Get PRO
ژوئن '21
+459
در 0 کانالها
Get PRO
مه '21
+515
در 0 کانالها
| تاریخ | رشد مشترکین | اشارات | کانالها | |
| 24 ژوئن | 0 | |||
| 23 ژوئن | +3 | |||
| 22 ژوئن | +3 | |||
| 21 ژوئن | 0 | |||
| 20 ژوئن | +3 | |||
| 19 ژوئن | 0 | |||
| 18 ژوئن | +6 | |||
| 17 ژوئن | +1 | |||
| 16 ژوئن | +1 | |||
| 15 ژوئن | +3 | |||
| 14 ژوئن | +1 | |||
| 13 ژوئن | +1 | |||
| 12 ژوئن | 0 | |||
| 11 ژوئن | +2 | |||
| 10 ژوئن | +3 | |||
| 09 ژوئن | +2 | |||
| 08 ژوئن | 0 | |||
| 07 ژوئن | 0 | |||
| 06 ژوئن | +1 | |||
| 05 ژوئن | +1 | |||
| 04 ژوئن | +1 | |||
| 03 ژوئن | +2 | |||
| 02 ژوئن | 0 | |||
| 01 ژوئن | +1 |
پستهای کانال
Мой племянник учится на втором курсе программной инженерии. Позвонил недавно, попросил помочь с поиском стажировки. И среди прочего спросил, где лучше разобраться с Git. Я удивился. На втором курсе студенты всё ещё обходят Git стороной. А потом это бьёт по ним на собеседованиях.
Я посоветовал ему отличный гайд от Beej.
Он перезвонил сегодня. Полный восторга. Делился впечатлениями. Так что вот, снова рекомендую. Для всех студентов и всех, кто только начинает знакомство с Git.
https://beej.us/guide/bggit/
@WebDev_Plus
| 2 | CSS Tip: Автоматически помечайте внешние ссылки
Если ссылка открывается в новой вкладке через target="_blank", можно добавить к ней визуальный индикатор с помощью CSS.
a[target="_blank"]::after {
content: " ↗️";
}
Преимущества:
✅ Пользователь сразу видит, что ссылка откроется в новой вкладке
✅ Улучшается UX без изменения HTML-разметки
✅ Работает автоматически для всех внешних ссылок с target="_blank"
✅ Не нужно вручную добавлять иконки в каждую ссылку
Небольшая деталь, которая делает интерфейс более понятным.
#CSS #Frontend #WebDev #UIDesign
@WebDev_Plus | 286 |
| 3 | Anime.js 4.5 уже вышел — и релиз получился интересным.
Представлен адаптер для Three.js 🎉
До 50% меньше кода для создания 3D-анимаций
API для 3D-объектов в стиле CSS-трансформаций (rotate, skew и др.)
Более простая анимация цветов материалов
Удобная анимация инстансированных мешей (Instanced Mesh)
Поддержка Stagger 3D
И это далеко не всё.
На видео показан пример анимации сцены Three.js через новый адаптер Anime.js. Благодаря ему можно анимировать объекты почти так же просто, как DOM-элементы в браузере, но уже в 3D-пространстве.
демо: https://codepen.io/editor/juliangarnier/pen/019ef018-43bb-7333-a6aa-2360a6d0e59b
доки: https://animejs.com/documentation/adapters/threejs-adapter/
чейнджлог: https://github.com/juliangarnier/anime/releases/tag/v4.5.0
@WebDev_Plus | 348 |
| 4 | Создал Telegram-бота и получил токен.
Установил:
laravel/ai
nutgram/laravel
Собрал SupportAgent с парой инструментов.
И бац — пользователи уже получают реально полезную AI-поддержку прямо в Telegram.
Ребята, как это вообще может быть настолько просто.
Не игнорируйте laravel/ai
@WebDev_Plus | 353 |
| 5 | Вот open-source веб-фреймворки в разных языках 😎👇 | 361 |
| 6 | Для Chrome вышло расширение Caveman, которое помогает сокращать количество токенов при работе с ИИ-моделями.
Расширение поддерживает ChatGPT, Claude, Gemini и другие сервисы. Оно автоматически переписывает промпты и ответы, убирая лишние слова без потери основного смысла.
По словам первопроходцев, это позволяет сократить расход выходных токенов до 75%, а ответы сделать более краткими и содержательными.
@WebDev_Plus | 407 |
| 7 | 🔥 Laravel Tip
В Laravel есть встроенный способ защититься от дублирующихся задач в очередях — интерфейс ShouldBeUnique.
Достаточно реализовать метод uniqueId() и вернуть уникальный идентификатор задачи:
class SyncUser implements ShouldQueue, ShouldBeUnique
{
public function uniqueId(): string
{
return $this->userId;
}
}
Если задача с таким идентификатором уже находится в очереди, Laravel не поставит её повторно.
Меньше ручных проверок, меньше блокировок и меньше гонок данных. Особенно полезно для синхронизации пользователей, обработки вебхуков и фоновых задач, которые могут запускаться несколько раз подряд.
@WebDev_Plus | 401 |
| 8 | В PHP 8.4 появились две небольшие функции, которых разработчикам не хватало годами: array_any() и array_all().
Теперь вместо циклов вроде:
foreach ($items as $item) {
if (...) {
return true;
}
}
return false;
можно написать:
return array_any($items, fn ($item) => ...);
А проверки "все элементы соответствуют условию" превращаются в:
return array_all($items, fn ($item) => ...);
Кода меньше, читается проще, намерение видно сразу.
Редкий случай, когда небольшое дополнение к языку реально убирает тонны однотипного шаблонного кода.
@WebDev_Plus | 375 |
| 9 | 🔥VPS + ISPmanager со скидкой до 100% на Waicore
Запускаете сайты на VPS? Сейчас самое время попробовать ISPmanager практически бесплатно.
➕ Наши акции:
— 100% скидка на первый месяц лицензии ISPmanager при заказе VPS из категории «Веб-хостинг»
— Скидка 60% на лицензии ISPmanager при отдельной покупке
Также доступны:
🛡 SSL-сертификаты
🛡 BitNinja для защиты серверов от атак, спама и вредоносного ПО.
Получаете готовый VPS с установленной панелью управления и можете сразу приступать к работе с сайтами, почтой, базами данных и другими сервисами.
⚡️Акция действует месяц.
Подробнее на сайте WAICORE. | 335 |
| 10 | Блин... Этот open-source HTML Email Builder просто огонь
Это SDK для визуальной сборки email-шаблонов через drag-and-drop. Пользователи могут создавать письма без необходимости писать HTML-код с нуля.
→ визуальный email-конструктор с drag-and-drop
→ готовые email-компоненты
→ настраиваемые макеты писем
→ экспорт в HTML, MJML или JSON
Отлично подойдёт для SaaS-продуктов, e-commerce, CRM-систем, маркетинговых платформ и любых приложений, где нужно создавать email-шаблоны.
Исходники : github.com/templatical/sdk
@WebDev_Plus | 400 |
| 11 | Выводи типы из значений в TypeScript.
То есть не дублируй руками union-типы вроде:
type Role = "system_admin" | "content_editor" | "guest_viewer";
Лучше задай объект один раз, а тип получи из него:
type ValueOf<T extends Record<PropertyKey, unknown>> = T[keyof T];
const USER_ROLE = {
Admin: "system_admin",
Editor: "content_editor",
Viewer: "guest_viewer",
} as const satisfies Record<string, string>;
type Role = ValueOf<typeof USER_ROLE>;
Теперь Role автоматически равен:
"system_admin" | "content_editor" | "guest_viewer"
Если потом добавишь новую роль в USER_ROLE, тип обновится сам.
@WebDev_Plus | 382 |
| 12 | Фиксация сессии в PHP: если после входа пользователя не сменить идентификатор сессии, злоумышленник может заранее навязать жертве свой PHPSESSID, а после её авторизации получить доступ к уже аутентифицированной сессии.
Исправляется одной строкой:
session_regenerate_id(true);
Вызывать её нужно сразу после успешного логина.
Параметр true здесь важен: он удаляет старый файл сессии.
Если вызвать просто:
session_regenerate_id();
старый идентификатор останется валидным на диске. В таком случае заранее украденный или навязанный до авторизации cookie всё ещё может использоваться для доступа к старой сессии.
Большинство современных фреймворков выполняют ротацию идентификатора сессии автоматически, но при работе с чистым PHP это нужно делать самостоятельно.
@WebDev_Plus | 402 |
| 13 | Кто сказал, что запуск больших моделей локально обязательно должен быть тяжёлым и раздутым?
Shimmy — это односоставный бинарник на Rust размером всего 5 МБ, который явно бросает вызов Ollama.
Что обещает проект:
→ один исполняемый файл размером 5 МБ
→ запуск примерно за 100 мс
→ потребление памяти около 50 МБ
→ 100% совместимость с OpenAI API
Если Ollama кажется слишком громоздким, а запускать локальные модели всё равно хочется — стоит присмотреться к Shimmy.
https://github.com/Michael-A-Kuykendall/shimmy
@WebDev_Plus | 422 |
| 14 | 15 мощных расширений для Chrome для разработчиков, дизайнеров и создателей контента
Loom — расширение для записи экрана, которое позволяет быстро записывать видео с экрана вместе с голосовыми комментариями и делиться ими.
Grammarly — ИИ-помощник для письма, который проверяет грамматику, орфографию, тон и читаемость текста прямо во время набора.
ColorZilla — инструмент для выбора цветов, позволяющий определять и копировать цвета с любых веб-страниц.
WhatFont — помогает быстро определить, какие шрифты используются на сайте.
Site Palette — генерирует цветовую палитру любого сайта для поиска дизайнерских референсов и вдохновения.
GoFullPage — делает полноразмерные скриншоты страниц без необходимости прокручивать их вручную.
Page Ruler — измеряет ширину и высоту элементов страницы в пикселях.
Lightshot — инструмент для быстрых скриншотов с возможностью редактирования и мгновенного обмена изображениями.
Imageye — находит все изображения на странице и позволяет быстро скачать их.
Responsive Viewer — помогает разработчикам проверять, как сайт выглядит на разных размерах экранов и устройствах.
CSS Viewer — показывает CSS-свойства элементов страницы при наведении курсора.
Web Developer — набор инструментов для веб-разработки, встроенный прямо в браузер.
JSON Viewer — форматирует и отображает JSON в удобном для чтения структурированном виде.
Lighthouse — автоматизированный инструмент от Google для анализа производительности сайта, доступности, SEO и соответствия лучшим практикам.
Wappalyzer — определяет технологии, фреймворки, CMS и другие инструменты, на которых построен сайт.
@WebDev_Plus | 486 |
| 15 | 🆕 Представлен MDN MCP Server!
Теперь документацию MDN и данные о совместимости браузеров можно подключить напрямую к AI-агенту или IDE и получать точные, актуальные ответы по веб-платформе.
Больше не нужно полагаться на устаревшие знания из обучающих данных модели.
Что даёт MDN MCP Server:
• прямой доступ к документации MDN;
• актуальные данные о поддержке API и веб-стандартов в браузерах;
• меньше галлюцинаций при работе с веб-разработкой;
• возможность использовать свежую информацию прямо в AI-агентах и редакторах кода.
Полезная штука для тех, кто использует Claude Code, Codex, Cursor и другие MCP-совместимые инструменты при веб-разработке.
@WebDev_Plus | 515 |
| 16 | Твои AI API могут упасть. Лимиты запросов могут закончиться. Но приложение не обязано останавливаться из-за этого.
В #Laravel AI SDK достаточно передать массив провайдеров в аргумент provider.
Если основной API недоступен, Laravel автоматически переключится на следующий провайдер в списке.
Никакой кастомной логики ретраев писать не нужно. 👇
@WebDev_Plus | 502 |
| 17 | Нашёл UI-библиотеку, которая меня прям бесит.
Бесит, потому что всё должно работать именно так.
Oat:
→ 6KB CSS + 2.2KB JS
→ Ноль зависимостей
→ Не требует фреймворка
→ Без этапа сборки
→ Только семантический HTML
Пишешь <button> — выглядит хорошо.
Пишешь <dialog> — выглядит хорошо.
Пишешь <input> — выглядит хорошо.
Никакого className="px-4 py-2 rounded-md bg-blue-500"
Никаких <Button variant="primary" size="md">
Просто HTML.
Доступность из коробки. Поддержка навигации с клавиатуры. Тёмная тема включена.
https://github.com/knadh/oat
@WebDev_Plus | 523 |
| 18 | Хочешь, чтобы твой AI-агент на Laravel использовал недорогую Gemini для простых диалогов, а при сложных задачах автоматически переключался на более мощную модель Claude?
Тогда стоит использовать динамическое переключение моделей
Переопределить модель по умолчанию можно прямо внутри метода prompt().
@WebDev_Plus | 511 |
| 19 | Этот инструмент проверяет производительность всего сайта.
Он сканирует все страницы и выставляет оценку каждой из них.
Что-то вроде Lighthouse, но с обзором всего сайта целиком.
Запуск:
npx unlighthouse --site <ваш-сайт>
@WebDev_Plus | 498 |
| 20 | Когда в Node.js появляются тяжёлые вычислительные задачи, производительность приложения может заметно просесть.
Из-за этого многие делают вывод, что Node.js плохо подходит для таких сценариев или что проблема в самом JavaScript. Но решение есть.
В этом руководстве от Sumit Saha подробно разбирается многопоточность в Node.js с помощью Worker Threads.
Что внутри:
* зачем нужны Worker Threads;
* чем они отличаются от Event Loop;
* как выносить CPU-intensive задачи в отдельные потоки;
* обмен данными между потоками;
* практические примеры и паттерны использования.
Хороший материал для тех, кто хочет использовать все возможности Node.js и не блокировать основной поток тяжёлыми вычислениями.
https://freecodecamp.org/news/how-to-implement-multi-threading-in-nodejs-with-worker-threads-full-handbook/
@WebDev_Plus | 486 |
اکنون در دسترس! پژوهش تلگرام ۲۰۲۵ — مهمترین بینشهای سال 
