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

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 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
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 с парой инструментов. И бац —
Создал Telegram-бота и получил токен. Установил: laravel/ai nutgram/laravel Собрал SupportAgent с парой инструментов. И бац — пользователи уже получают реально полезную AI-поддержку прямо в Telegram. Ребята, как это вообще может быть настолько просто. Не игнорируйте laravel/ai @WebDev_Plus
353
5
Вот open-source веб-фреймворки в разных языках 😎👇
Вот open-source веб-фреймворки в разных языках 😎👇
361
6
Для Chrome вышло расширение Caveman, которое помогает сокращать количество токенов при работе с ИИ-моделями. Расширение подде
Для Chrome вышло расширение Caveman, которое помогает сокращать количество токенов при работе с ИИ-моделями. Расширение поддерживает ChatGPT, Claude, Gemini и другие сервисы. Оно автоматически переписывает промпты и ответы, убирая лишние слова без потери основного смысла. По словам первопроходцев, это позволяет сократить расход выходных токенов до 75%, а ответы сделать более краткими и содержательными. @WebDev_Plus
407
7
🔥 Laravel Tip В Laravel есть встроенный способ защититься от дублирующихся задач в очередях — интерфейс ShouldBeUnique. Дост
🔥 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(). Теперь вместо
В 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. По
Блин... Этот 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: если после входа пользователя не сменить идентификатор сессии, злоумышленник может заранее навязать же
Фиксация сессии в 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 — расширение для записи экрана, кото
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-аген
🆕 Представлен 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 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 для простых диалогов, а при сложных задачах автоматически
Хочешь, чтобы твой 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