TGViewer
Channel Public Channel
Node.js Backend | YeaHub

Node.js Backend | YeaHub

@yeahub_node_backend

Теория, подготовка к интервью и курсы для Node.js разработчиков

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

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

Для связи: @ruslan_kuyanets
Subscribers
465
Photos
233
Videos
15
Links
590

Showing posts older than #374 · Back to latest

Older Posts 20 shown
Post #372 172
#Собес #docker
🤔 Что такое Docker Compose?

💬 Кратко:
Docker Compose - это инструмент для управления многоконтейнерными приложениями. С помощью простого YAML-файла ( docker-compose. yml ) можно настроить и запустить несколько контейнеров, определяя их сервисы, сети и тома.

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

📣 Хочешь получать больше таких разборов?
Подпишись на наш главный канал
  • ❤ 2
Post #371 213
#статьи
😬 Отслеживание позиций торгового робота Московской биржи через CSV файл

Статья посвящена созданию кроссплатформенного торгового робота для Московской биржи через API брокера. Рассматриваются проблемы готовых решений, таких как QUIK, и преимущества разработки легкого и гибкого инструмента.
Читать...

👉Новости 👉База вопросов
  • ❤ 2
Post #370 150
#полезное
😐 Неожиданное возвращение: легендарный Smalltalk-80 обрёл новую жизнь в мире JavaScript.

Теперь это бесплатная и опенсорсная реализация, которая компилируется в JS и работает как в браузере, так и в Node.js. Сохраняется дух полностью объектно-ориентированного Smalltalk, но с привычным синтаксисом и экосистемой JS.

🟠 Вместо «имиджей» используется файловая структура — удобно писать в VS Code
🟠 Подсветка кода и отладка доступны сразу «из коробки»
🟠 Классы и методы максимально близки к JavaScript, поэтому порог входа минимален
🟠 Встроены браузерные API, Express, базы данных, файловая система и даже многопоточность

Еще недавно появилась поддержка NW.js, так что теперь можно собирать кроссплатформенные десктопные приложения с интерфейсами на HTML+CSS — легче и менее прожорливо, чем на Electron.

Подробнее и с примерами: https://small-js.org/

👉Новости 👉База вопросов
  • ❤ 2
Post #369 134
#статьи
😱 Кэширование информации в Redis на NestJS

Статья показывает, как подключить Redis к проекту и настроить кэширование данных с помощью @nestjs-mod/cache-manager. Рассматриваются примеры работы с Docker Compose и Kubernetes для оптимизации запросов.
Читать

👉Новости 👉База вопросов
Хабр Кэширование информации в Redis на NestJS Предыдущая статья: Интеграция внешнего файлового сервера https://min.io в фулстек приложение на NestJS и Angular На каждом фронтенд запросе к бэкенду запрашивается информация по профилю пользователя...
  • ❤ 2
Post #368 141
#Собес #docker
🤔 Есть ли ограничения на количество контейнеров, которые можно запустить в Docker?

💬 Кратко:
B Docker нет явного ограничения на количество контейнеров. Ограничения зависят от аппаратных ресурсов, таких как обьем памяти и количество процессорных ядер.

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

📣 Хочешь получать больше таких разборов?
Подпишись на наш главный канал
  • ❤ 2
Post #367 141
#ЛитКод
Задача: 363. Max Sum of Rectangle No Larger Than K

Дана матрица размером m x n и целое число k, вернуть максимальную сумму прямоугольника в матрице, такая что его сумма не превышает k.

Гарантируется, что будет прямоугольник с суммой, не превышающей k.

Пример:
Input: matrix = [[1,0,1],[0,-2,3]], k = 2
Output: 2
Explanation: Because the sum of the blue rectangle [[0, 1], [-2, 3]] is 2, and 2 is the max number no larger than k (k = 2).


👨‍💻 Алгоритм:

1⃣Создать вспомогательную функцию updateResult, которая будет находить максимальную сумму подмассива в одномерном массиве, не превышающую k.

2⃣Преобразовать каждую подматрицу в одномерный массив и применить к ней функцию updateResult.

3⃣Вернуть максимальную найденную сумму.

😎 Решение:
class Solution {
constructor() {
this.result = Number.NEGATIVE_INFINITY;
}

updateResult(nums, k) {
let sum = 0;
const sortedSum = [0];

for (let num of nums) {
sum += num;
let idx = this.binarySearch(sortedSum, sum - k);
if (idx < sortedSum.length) {
this.result = Math.max(this.result, sum - sortedSum[idx]);
}
sortedSum.push(sum);
sortedSum.sort((a, b) => a - b);
}
}

binarySearch(arr, target) {
let left = 0, right = arr.length;
while (left < right) {
let mid = Math.floor((left + right) / 2);
if (arr[mid] < target) left = mid + 1;
else right = mid;
}
return left;
}

maxSumSubmatrix(matrix, k) {
const rows = matrix.length;
const cols = matrix[0].length;

for (let i = 0; i < rows; i++) {
let rowSum = Array(cols).fill(0);
for (let row = i; row < rows; row++) {
for (let col = 0; col < cols; col++) {
rowSum[col] += matrix[row][col];
}
this.updateResult(rowSum, k);
if (this.result === k) {
return this.result;
}
}
}
return this.result;
}
}


👉Новости 👉База вопросов
LeetCode Minimum Size Subarray Sum - LeetCode Can you solve this real interview question? Minimum Size Subarray Sum - Given an array of positive integers nums and a positive integer target, return the minimal length of a subarray whose sum is greater than or equal to target. If there is no such subarray…
  • ❤ 1
Post #366 153
#полезное
😎 Browserable — открытый инструмент для автоматизации браузера с помощью AI-агентов.

Что делает:
🟠 Управляет браузером как человек: переходит по сайтам, кликает, заполняет формы, вытаскивает данные.
🟠 Достигает 90.4 % на тесте Web Voyager — один из лучших результатов среди подобных решений.
🟠 Работает локально (self-hosted) или через удалённые браузеры.
🟠 Запуск в 1 команду (`npx browserable`) или в полном окружении через Docker.
🟠 В комплекте: админ-панель, REST API, JavaScript/TypeScript SDK, интеграция с LLM (OpenAI, Claude, Gemini и др.).

Зачем полезно:
— Автопарсинг и мониторинг сайтов
— Автоматизация тестирования веб-приложений
— Интеграция с агентами для сложных сценариев в интернете
GitHub

👉Новости 👉База вопросов
  • ❤ 2
Post #364 160
#Собес #docker
🤔 Чем отличается логирование контейнера от логирования демона?

💬 Кратко:
Логирование на уровне демона касается самого процесса работы Docker (системных сообщений и ошибок), в то время как логирование контейнера фокусируется на выводе, генерируемом внутри конкретных контейнеров. Логи демона содержат информацию о работе Docker, а логи контейнера - данные, связанные с выполнением приложений в контейнерах.

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

📣 Хочешь получать больше таких разборов?
Подпишись на наш главный канал
Post #363 188
#полезное
❤️‍🔥 Как пересылать сообщения из Telegram в SMS с помощью бота

В этом гайде пользователь объясняет, как можно написать простого Telegram чат-бота на NodeJS, который будет пересылать все входящие сообщения в SMS, используя Exolve SMS API.
Читать

👉Новости 👉База вопросов
Хабр Как пересылать сообщения из Telegram в SMS с помощью бота Всем привет! У платформы МТС Exolve есть сообщество, которое часто делится полезными гайдами от прокачки своих серверов до открытия ворот по SMS. Наиболее интересные и подробные решили размещать в...
  • ❤ 2
  • 👍 2
Post #362 191
#статьи
👋 Ментальная модель потоков в Node.js

Статья исследует концепцию потоков в Node.js, объясняя их ключевую роль в модулях, таких как fs и http. Рассматриваются основные концепции и ментальная модель, помогающая понять и эффективно использовать потоки.
Читать

👉Новости 👉База вопросов
  • ❤ 1
  • 👍 1
Post #361 170
#полезное
😱 Сократите свой CSS-код с помощью :where()

Используйте псевдокласс-функцию :where(), когда нужно применить одинаковые стили к нескольким элементам, не беспокоясь о том, что порядок селекторов повлияет на специфичность правил. Это простой способ сделать CSS более предсказуемым и удобным для поддержки.


/* Without :where() */
.container > h1,
.container > .card h1,
.container > .card:last-child {
border: 2px solid red;
padding: 10px;
}

/* With :where() */
.container > :where(h1, .card .h1, .card:last-child) {
border: 2px solid red;
padding: 10px;
}


👉Новости 👉База вопросов
  • ❤ 2
Post #360 162
#Собес #docker
🤔 Как использовать Docker для множества окружений приложений?

💬 Кратко:
Для работы с несколькими окружениями в Docker используется Docker Compose. Создаются отдельные файлы docker-compose для каждой среды (например, docker-compose.dev.yml ), и на основе этих файлов запускаются соответствующие окружения с нужными настройками.

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

📣 Хочешь получать больше таких разборов?
Подпишись на наш главный канал
  • ❤ 2
  • 👍 2
Post #359 181
#статьи
🛞 Различные (и современные) способы переключения контента

Давайте уделим немного времени рассмотрению Dialog API, Popover API и остальных. Рассмотрим, когда лучше использовать каждый из них в зависимости от требований. Модальные или немодальные? JavaScript или чистый HTML/CSS? Не уверены? Не волнуйтесь, мы разберёмся во всём этом.
Читать...

👉Новости 👉База вопросов
Заметки разработчика Различные (и современные) способы переключения контента Давайте уделим немного времени рассмотрению Dialog API, Popover API и остальных. Рассмотрим, когда лучше использовать каждый из них в зависимости от требований.
  • ❤ 2
Post #358 195
#полезное
🥄 turfjs — это javascript библиотека позволяющая выполнять пространственный анализ прямо в браузере или через node.js.

Проект включает более 200 модулей для различных операций с geojson от простых измерений расстояний до сложных геостатистических расчетов. Библиотека работает в современных браузерах и поддерживает актуальные версии node.js. Инструмент также имеет модульную структуру и активную аудиторию сообщества.
Гитхаб

👉Новости 👉База вопросов
  • ❤ 2
Post #357 185
#статьи
🏕 Кликджекинг по двойному щелчку

Кликджекинг – это вид атаки, при котором злоумышленник обманывает пользователя. Раньше это делалось через невидимый или замаскированный элемент на веб-странице, однако многие виды атак уже остарели. В данной статье автор знакомит с новым приемом, который работает практически на всех сайтах.
Читать статью

👉Новости 👉База вопросов
  • ❤ 2
Post #356 178
#Собес #docker
🤔 Поддерживает ли Docker IРV6?

💬 Кратко:
Да, Docker поддерживает IPv6, но только на Linux-серверах. Чтобы включить поддержку IPvб, необходимо настроить Docker daemon, изменив параметр ipv6 в конфигурационном файле /etc/docker/daemon. json .

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

📣 Хочешь получать больше таких разборов?
Подпишись на наш главный канал
  • ❤ 1
  • 👍 1
Post #355 187
#полезное
😱 Yaak — это приложение для работы с API (REST, GraphQL, SSE, WebSocket, gRPC), созданное с использованием Tauri, Rust и ReactJS!

Оно позволяет импортировать коллекции из Postman, OpenAPI, Swagger и других инструментов, а также предлагает удобные функции для авторизации (OAuth 2.0, JWT и др.), фильтрации ответов (JSONPath, XPath), организации рабочих пространств и использования переменных окружения.
Github

👉Новости 👉База вопросов
  • ❤ 1
Post #354 162
#полезное
🤯 Typed Japanese

Для любителей технологий: энтузиасты решили изучать языки с помощью TypeScript.

Проект Typed Grammar (https://typedgrammar.com/) обучает грамматике (например, английскому или японскому) с использованием типов и структур программирования. И никаких зелёных сов!
GitHub

👉Новости 👉База вопросов
  • ❤ 1
Post #353 179
#полезное
❤️‍🔥 Metro UI — это современный фронтенд-фреймворк, который помогает разработчикам создавать быстрые и отзывчивые веб-приложения с приятным интерфейсом в стиле Metro. Его компоненты оптимизированы для мобильных устройств, а гибкость позволяет легко адаптировать проекты под любые экраны.

Фреймворк активно развивается: новые версии выходят почти каждую неделю, а сообщество в Discord всегда готово помочь. Хотя долгосрочная поддержка старых версий не предусмотрена, разработчики могут оставаться на проверенных релизах или оперативно обновляться для доступа к новым функциям.
GitHub

👉Новости 👉База вопросов
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →