Node.js Backend | YeaHub – Telegram
Node.js Backend | YeaHub
499 subscribers
165 photos
15 videos
414 links
Теория, подготовка к интервью и курсы для Node.js разработчиков

YeaHub — это платформа для IT-специалистов, объединяющая обучение, карьерный рост, развитие и сообщество единомышленников.

Платформа: https://yeahub.ru

Для связи: @ruslan_kuyanets
Download Telegram
#полезное
😵 bknd — проект, который предоставляет решения для быстрого создания серверной инфраструктуры и бэкенда для мобильных приложений и веб-сервисов!

Это платформа для упрощения работы с бэкендом, обеспечивающая API для обработки пользователей, данных и аутентификации, а также другие серверные функции. Этот репозиторий направлен на разработчиков, которые хотят быстро создавать серверную часть своих приложений без необходимости писать серверный код с нуля.

Основные особенности проекта включают простоту интеграции, поддержку аутентификации и управления пользователями, а также возможность работы с реальным временем и уведомлениями.
Github

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
2
#Собес #nodejs
🤔 Что такое Node.js?

💬 Кратко:
Node.js - это серверная платформа для выполнения JavaScript вне браузера, построенная на движке V8 от Google. Она позволяет писать серверные приложения, используя JavaScript, благодаря своей асинхронной и событийно- ориентированной архитектуре. Node. js чаще всего используют для создания веб-серверов и обработки запросов в реальном времени.

📌 Полный разбор + примеры использования — на платформе:
👉
Перейти к разбору

📣 Хочешь получать больше таких разборов?
Подпишись на наш главный канал
Please open Telegram to view this post
VIEW IN TELEGRAM
1
#статьи
👋 Паттерны для эффективного манипулирования DOM с ванильным JavaScript

В руководстве рассматриваются такие шаблоны работы с DOM на JavaScript, как выбор правильного querySelector, кэширование элементов и улучшение обработки событий.
Читать

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
1
#полезное
😇 Работа с графикой: использование библиотеки Canvas для рисования и визуализации данных

Работа с графикой является важной частью разработки веб-приложений, особенно при рисовании и визуализации данных. Для этого разработчики часто используют библиотеку Canvas, которая предоставляет мощные инструменты для создания интерактивных и красочных графических элементов.

Canvas - это элемент HTML5, который позволяет рисовать графику с помощью JavaScript. Он предоставляет API для создания и управления контекстом рисования, на котором можно рисовать линии, фигуры, текст и многое другое.

В данном примере мы получаем контекст рисования Canvas с помощью метода getContext(). Затем мы используем методы контекста, такие как fillRect() для рисования прямоугольника, stroke() для рисования линии и fillText() для рисования текста.

Мы также можем устанавливать различные свойства контекста, такие как цвет заливки (fillStyle), цвет обводки (strokeStyle), толщина линии (lineWidth) и шрифт (font).

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#статьи
❤️‍🔥 Пишем Realtime для Multiple-page application в микросервисной архитектуре

Статья рассказывает, как в MPA на микросервисной архитектуре избежать потерь сообщений при перезагрузке страницы. Рассматривается метод повторной отправки пропущенных WebSocket-сообщений.
Читать

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#Собес #nodejs
🤔 Какие типы приложений можно создавать с помощью Node.js?

💬 Кратко:
С помощью Node js можно создавать серверные приложения, такие как веб-серверы, REST API, чаты в реальном времени, инструменты для разработки (например, сборщики) и даже десктопные приложения через Electron.

📌 Полный разбор + примеры использования — на платформе:
👉
Перейти к разбору

📣 Хочешь получать больше таких разборов?
Подпишись на наш главный канал
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
📞 Promises-Training — практикуй промисы в JavaScript

Promises-Training — это коллекция упражнений по промисам с автоматическими тестами, где можно прокачать работу с async/await, .then/.catch, конкурентным выполнением и ограничением параллельности.

Почему полезно:
🔵 Пошаговый рост сложности: от простых примеров до нетривиальных сценариев.
🔵 Автотесты сразу показывают, правильно ли решена задача.
🔵 Хорошо подходит, чтобы глубже понять асинхронность и промисы.
🔵 Есть упражнения по реальным случаям: parallelMaxConcurrency, concurrencyOverride, extractingResolvers и др.

📦 Как начать:

npm create promises-training@latest


Запуск проверки конкретного упражнения:

npm run check <category>/<exercise>

Итог: отличный способ на практике закрепить работу с промисами и уверенно освоить асинхронность в JS.
Лежит тут: https://github.com/henriqueinonhe/promises-training

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1
🎶 Dependency Injection в Nest.js

DI — это то, что позволяет проекту оставаться масштабируемым и удобным. Вместо того чтобы руками создавать объекты, мы говорим фреймворку: «подкидывай зависимости сам»

🕺 Базовая идея
В Nest.js всё крутится вокруг провайдеров. Любой сервис, репозиторий или клиент можно зарегистрировать и потом внедрять в другие классы через конструктор

@Injectable()
export class UsersService {
constructor(private readonly repo: UsersRepo) {}
}


Nest сам найдёт UsersRepo, создаст его экземпляр и передаст в сервис

📦 Scopes (области жизни провайдера)
Нередко спрашивают на собесах, поэтому важно запомнить все скоупы

По умолчанию все провайдеры singleton — один экземпляр на всё приложение. Но иногда этого мало.

Nest поддерживает три области жизни:
1) Singleton (по умолчанию) — создаётся один раз при старте приложения
2) Request — новый экземпляр для каждого входящего запроса.
3) Transient — новый экземпляр при каждом внедрении

Request и Transient будут дороже по памяти, особенно под нагрузкой

🚀 Пост Guru Node.js: @DemetraIT
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍2🔥2
#Собес #nodejs
🤔 Назовите преимущества Node.js перед другими фреймворками.

💬 Кратко:
Преимущества Node.js:
1. Скорость - благодаря движку V8.
2. Асинхронность - обработка большого количества запросов без блокировки.
3. JavaScript - единый язык для фронтенда и бэкенда.
4. Масштабируемость - подходит для высоконагруженных приложений.
5. Большая экосистема - npm предоставляет множество готовых модулей.

📌 Полный разбор + примеры использования — на платформе:
👉
Перейти к разбору

📣 Хочешь получать больше таких разборов?
Подпишись на наш главный канал
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
🤯 Immich Drop Uploader - простой загрузчик для вашего Immich сервера

Легкое веб-приложение без регистрации для загрузки фото и видео на Immich. Поддерживает очередь загрузки, предотвращение дубликатов и сохранение оригинальных дат. Идеально подходит для мобильных устройств и обеспечивает конфиденциальность.

Основные моменты:
- Никаких аккаунтов — просто перетащите файлы
- Поддержка очереди с прогрессом через WebSocket
- Автоматическое добавление в альбом
- Темная тема и мобильная адаптация
- Легкая конфигурация через .env и Docker

GitHub: https://github.com/Nasogaa/immich-drop

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
🤓 Умное преобразование чисел с плавающей точкой

nstr автоматически исправляет проблемы с точностью чисел, улучшая отображение в интерфейсах. Забудьте о некорректных значениях, таких как 0.30000000000000004 — теперь ваши числа выглядят аккуратно и правильно.

Основные моменты:
🔵 Умное определение точности для чисел
🔵 Чистое отображение в UI-компонентах
🔵 Поддержка пользовательских настроек точности
🔵 Простой в использовании и интеграции
GitHub

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
🤓 Работа с локальным хранилищем

localStorage позволяет хранить данные на стороне клиента (в браузере). Методы setItem() используются для записи данных, getItem() для чтения данных и removeItem() для удаления данных из локального хранилища.

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#Собес #nodejs
🤔 Что такое Event Loop и Event Emitter?

💬 Кратко:
Event Loop - это механизм в Node.js, который позволяет выполнять асинхронные операции без блокировки потока. Он управляет событиями и задачами, помещая их в очередь. Event Emitter - это объект, который позволяет создавать и обрабатывать события, используя методы .emit() и .on() -

📌 Полный разбор + примеры использования — на платформе:
👉
Перейти к разбору

📣 Хочешь получать больше таких разборов?
Подпишись на наш главный канал
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
🤯 Обход защиты от ботов с помощью браузерного отпечатка

Этот репозиторий предлагает решения для обхода анти-бот защит при веб-скрапинге. Он включает советы и инструменты для создания незаметных ботов, которые могут эффективно взаимодействовать с различными веб-сайтами, минимизируя риск блокировки.

Основные моменты:
- Стратегии обхода защиты от ботов
- Рекомендации по использованию прокси и сервисов
- Подходы к созданию естественных браузерных отпечатков
- Инструменты для работы с JavaScript-детекцией
GitHub

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
😐 Как декораторы могут упростить разработку веб-форм

В статье я буду писать о подходе, использующем библиотеку MobX. Так что если вы в своих проектах её не используете, статья может быть не так полезна. Но вы можете рассматривать её, как возможный источник вдохновения по тому, как можно разрабатывать формы.
Читать статью

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
😬 Умный мост между LSP и GitHub Copilot

Расширение для Visual Studio Code, которое интегрирует возможности любого сервера языков (LSP) с инструментами Model Context Protocol (MCP) и GitHub Copilot. Это решение улучшает взаимодействие с кодом, позволяя Copilot более эффективно находить объекты и предоставлять контекстные подсказки.

Основные моменты:
🟢 Поддержка любого языка с активным LSP в VSCode
🟢 Интеллектуальная навигация по кодовой базе
🟢 Контекстные предложения и анализ кода
🟢 Автоматическое улучшение ответов GitHub Copilot
🟢 Интуитивно понятные инструменты для работы с кодом
GitHub: https://github.com/sehejjain/Language-Server-MCP-Bridge

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
🍴 Constraints в базах данных

⚙️ Что такое constraint

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

🫵 Основные типы

1. PRIMARY KEY и FOREIGN KEY
2. UNIQUE — не даёт вставить дубликат

💡 Пример:
email в таблице пользователей должен быть уникальным.

3. NOT NULL — запрещает NULL, гарантирует, что поле обязательно заполнено

4. CHECK — позволяет задать собственное логическое условие

💡 Пример:
CHECK (age >= 18) — в базу не попадёт несовершеннолетний.


🚀 Пост Guru Node.js: @DemetraIT
Please open Telegram to view this post
VIEW IN TELEGRAM
3👍2🔥2
#Собес #git
🤔 Какие различные стратегии ветвления вы знаете?

💬 Кратко:
Централизованный рабочий процесс (Centralized Workflow). Веткой разработки по умолчанию является main, и все изменения фиксируются в этой ветке. Этот рабочий процесс не требует других веток, кроме главной.

Рабочий процесс разветвления функций (Feature Branching Workflow). Основная идея рабочего процесса разветвления функций заключается в том, что разработка всех функций должна вестись в специальной ветке, а не в основной.

Рабочий процесс Gitflow. Gitflow определяет строгую модель ветвления, разработанную вокруг релиза проекта. Это обеспечивает надежную основу для управления большими проектами. Она назначает очень специфические роли различным веткам и определяет, как и когда они должны взаимодействовать. В дополнение к функциональным веткам используются отдельные ветки для подготовки, поддержки и записи релизов.

Рабочий процесс Forking. Forking Workflow принципиально отличается от других популярных рабочих процессов Git. Вместо того чтобы использовать единый серверный репозиторий в качестве "центральной" кодовой базы, он предоставляет каждому разработчику свой серверный репозиторий. Это означает, что каждый участник имеет не один, а два Git-репозитория: частный локальный и публичный серверный. Чаще всего Forking Workflow встречается в публичных проектах с открытым исходным кодом.

📌 Полный разбор + примеры использования — на платформе:
👉
Перейти к разбору

📣 Хочешь получать больше таких разборов?
Подпишись на наш главный канал
Please open Telegram to view this post
VIEW IN TELEGRAM
#статьи
👋 Как за 10 минут создать тестировщик нагрузки для API на Node.js

Почему разработка собственного инструмента для нагрузки на API иногда оказывается лучшим выбором? В статье обсуждается реальный кейс: задачи тестирования производительности, ограничения Postman и сложность JMeter. Узнайте, как и зачем был создан простой и эффективный API-лоадер на Node.js.
Читать...

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
1🔥1