Каталог каналов Каналы в закладках Мои каналы Поиск постов Рекламные посты
Инструменты
Каталог TGAds beta Мониторинг Детальная статистика Анализ аудитории Telegraph-статьи Бот аналитики
Полезная информация
Инструкция Telemetr Документация к API Чат Telemetr
Полезные сервисы
Защита от накрутки Создать своего бота Продать/Купить канал Монетизация

Не попадитесь на накрученные каналы! Узнайте, не накручивает ли канал просмотры или подписчиков Проверить канал на накрутку
Прикрепить Телеграм-аккаунт Прикрепить Телеграм-аккаунт

Телеграм канал «WebDev+ | Веб-разработка»

WebDev+ | Веб-разработка
383
238
8
0
2.0K
Присоединяйтесь к нашему каналу и погрузитесь в мир веб-разработки

Связь: @devmangx
Подписчики
Всего
8 980
Сегодня
-2
Просмотров на пост
Всего
669
ER
Общий
6.62%
Суточный
4.8%
Динамика публикаций
Telemetr - сервис глубокой аналитики
телеграм-каналов
Получите подробную информацию о каждом канале
Отберите самые эффективные каналы для
рекламных размещений, по приросту подписчиков,
ER, количеству просмотров на пост и другим метрикам
Анализируйте рекламные посты
и креативы
Узнайте какие посты лучше сработали,
а какие хуже, даже если их давно удалили
Оценивайте эффективность тематики и контента
Узнайте, какую тематику лучше не рекламировать
на канале, а какая зайдет на ура
Попробовать бесплатно
Показано 7 из 383 постов
Смотреть все посты
Пост от 10.01.2026 14:27
355
0
4
JavaScript Proxy сильно выручает, когда нужно ловить обновления стейта. // Building a reactive store with Proxy const createReactiveStore = (data, onChange) => { return new Proxy(data, { set(target, key, value) { const oldValue = target[key]; target[key] = value; onChange(key, value, oldValue); return true; }, }); }; // Usage const state = createReactiveStore( { count: 0, status: 'idle', isOnline: false }, (key, newVal, oldVal) => { console.log(`🔁 ${key}: ${oldVal} -> ${newVal}`); // You can handle business logic or UI updates here } ); state.count = 5; // 🔁 count: 0 -> 5 state.status = 'loading'; // 🔁 status: idle -> loading state.isOnline = true; // 🔁 isOnline: false -> true state.status = 'error'; // 🔁 status: loading -> error state.count++; // 🔁 count: 5 -> 6 @WebDev_Plus
1
🔥 1
👏 1
Пост от 10.01.2026 10:31
429
0
0
Собрал чат-бота за вечер → заработал 9 000₽ Ничего придумывать не надо. Открыл шаблон → Собрал бота как конструктор → Получил деньги. Сейчас каждый бизнес живёт в онлайне. Всем нужны чат-боты, авторассылки и другие онлайн-сервисы. Но предприниматели сами не будут разбираться в настройке сервисов. Значит тут появляется отличная ниша для заработка. — 9-15 тыс. ₽ за настройку (3–4 часа работы). — до 50 тыс. ₽ в месяц за сопровождение чат-бота и рассылок. Собирается любой чат-бот на конструкторе, где ты просто расставляешь текст клиента по блокам. Как новичку на создании чат-ботов накопить на отдых, машину, квартиру и все хотелки? Начни бесплатное обучение 👉 @other_digital_bot Там ты за пару недель научишься собирать ботов и сможешь получить клиента.
👏 2
Пост от 10.01.2026 09:07
426
0
1
Только что вышла версия 1.4.0 расширения Laravel для VS Code, и в ней подъехала очень приятная штука: теперь artisan:make можно запускать прямо из Command Palette. Меньше переключений контекста, быстрее навигация и генерация — просто вызываешь палитру и создаёшь нужный класс/модель/контроллер на месте. @WebDev_Plus
4
Пост от 09.01.2026 19:07
514
0
9
TypeScript умеет вытаскивать типы через indexed access — помогает не дублировать типы и не объявлять всё заново. interface UserAPIResponse { user: { id: number; name: string; email: string; roles: Array<{ name: string; permissions: string[]; scope: { resource: string; actions: string[]; }; }>; metadata: { createdAt: string; lastLogin: string; }; }; } // Extract types without redefining type User = UserAPIResponse["user"]; // Extract Nested Object type UserMetadata = UserAPIResponse["user"]["metadata"]; // Extract Array Element Type type Role = UserAPIResponse["user"]["roles"][number]; // Extract from Nested Array type Permission = Role["permissions"][number]; // OR (direct access) type Permission2 = UserAPIResponse["user"]["roles"][number]["permissions"][number]; // Extract Nested Object from Nested Array type RoleScope = UserAPIResponse["user"]["roles"][number]["scope"]; // OR (via Role type) type RoleScope2 = Role["scope"]; @WebDev_Plus
👍 3
1
🔥 1
😁 1
Пост от 09.01.2026 09:07
537
0
13
Открытый и самохостящийся скрин-рекордер для Mac и Windows с неограниченной бесплатной локальной записью, плавными эффектами зума, поддержкой веб-камеры, автоматическими субтитрами и полноценным видеоредактором. Что выберешь ты? Открытый исходный код ✌️ @WebDev_Plus
👍 2
👏 2
Пост от 08.01.2026 17:56
580
0
4
пик JavaScript-безумия: если вызвать setInterval с таймаутом больше чем INT_MAX, вместо того чтобы кинуть ошибку (что было бы логично), setInterval молча начнет дергать твой колбэк каждую миллисекунду @WebDev_Plus
Пост от 08.01.2026 15:07
586
0
4
📱 Держите 6 хороших каналов по искусственному интеллекту и программированию для любого уровня! Выбирай направление: 📱 Нейросети — @neuro_prompt 🤖 AI-инструменты — @ai_prompt 📱 Python — @python_prompt 🤔 InfoSec & Хакинг — @infosec_prompt 👩‍💻 IT Новости — @it_news 😄 IT Мемы — @it_memes Промпты, обучение, шпаргалки и полезные ресурсы на каждую тему!
🔥 1
Смотреть все посты