Node.js Backend | YeaHub
327 subscribers
100 photos
11 videos
270 links
Теория, подготовка к интервью и курсы для Node.js разработчиков

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

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

Для связи: @ruslan_kuyanets
Download Telegram
#Собес #git
🤔 Как отменить коммит, который уже был отправлен и обнародован?

Для
отмены коммита, который был отправлен на сервер, можно использовать команду git revert , которая создаст новый коммит, отменяющий изменения. Важно, что это безопасный метод, так как сохраняется история изменений.

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
👍 Garfish — фреймворк для микросервисного фронтенда. Этот фреймворк решает проблему интеграции разрозненных веб-приложений в единый продукт. Подход позволяет командам разрабатывать модули независимо на React, Vue или любых других технологиях, но запускать их как части целого.

Фреймворка имеет довольно продуманную изоляцию: песочницы для JS/CSS, роутинг с автономными зонами видимости и общий механизм обмена данными между модулями. Адаптивная загрузка в системе реализована через анализацию поведения пользователей, чтобы предварительно кэшировать часто используемые модули.
Гитхаб

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#статьи
🛞 Среда выполнения

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

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

git reflog показывает историю всех перемещений HEAD, включая коммиты, слияния и переключения веток. Эта команда полезна для восстановления потерянных коммитов или веток.

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
😵‍💫 Fitty — умная библиотека для автоматического масштабирования текста под размер родительского контейнера. Этот легковесный инструмент особенно полезен при создании адаптивных интерфейсов, где важно сохранить читаемость текста на любых экранах.

Библиотека работает с веб-шрифтами, поддерживает минимальный и максимальный размер текста, а также автоматически обновляется при изменении макета. Для старта достаточно подключить скрипт и вызвать fitty() для нужного элемента. Под капотом — умный механизм, который группирует операции чтения и записи DOM.
Гитхаб

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
😎 isomorphic-git — Git на чистом JavaScript для браузера и Node.js. Уникальный проект, который переосмысливает работу с Git — теперь операции с репозиториями возможны прямо в браузере без серверных зависимостей. Библиотека воссоздает поведение классического Git, работая с файловой системой через адаптеры.

Удобно реализованы сложные операции: клонирование, коммиты и даже push/pull работают через Web-интерфейс, правда требуют CORS-прокси для внешних репозиториев. Есть встроенный CLI isogit для тестирования функциональности.
Гитхаб

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Импорт локальных изображений vs использование изображений из папки /public в Next.js

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#Собес #git
🤔 Перечислите команды для удаления ветки git

Для удаления локальной ветки:
git branch -d ‹ branch_name>

Если ветка содержит незавершённые изменения:
git branch -D ‹ branch_name>

Для удаления удалённой ветки:
git push origin --delete ‹branch_name>


👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#статьи
😇 React: Фабричный метод

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

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#видео
👋 React-компоненты: Модальное окно

Продолжаем делиться циклом видео, благодаря которому ты создашь собственную библиотеку компонентов для проектов на ReactJS. В этот раз ты сделаешь компонент модального окна.
Смотреть видео

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
❤️‍🔥 Oh‑My‑Logo — «волшебный» генератор логотипов от shinshin86

Oh‑My‑Logo — утилита с простым интерфейсом для создания уникальных логотипов прямо в терминале. Работает быстро, без лишнего визуального шума.

Как это работает:
🔵 Пользователь вводит название бренда (например, “MyStartup”) и краткое описание
🔵 Утилита генерирует цветные ASCII- или Unicode‑логотипы с эффектом паддинга, обводки, рамки или градиента
🔵 Вы можете пробовать разные стили и цвета прямо из командной строки

Зачем это нужно:
🟠 Быстро придумать временное оформление для README, скрипта или учебного проекта
🟠 Стильно оформить вывод утилиты или CI-лог
🟠 Упростить создание ASCII-баннера для скриптов или серверных инструментов

Вывод:
Oh‑My‑Logo — лёгкий способ добавить индивидуальности проектам в текстовом интерфейсе. Без GUI, без лишних шагов — просто командный стиль и творческий подход.
Гитхаб

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#Собес #git
🤔 Что делает команда git stash?

Команда git stash сохраняет текущие незавершённые изменения в специальное место (стек), чтобы вы могли переключиться на другую ветку или выполнить другие действия. Эти изменения можно позже восстановить с ПОМОЩЬЮ git stash apply или git stash pop .

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
👨‍💻 Rio — open-source фреймворк для разработки веб-приложений на чистом Python: не нужен ни HTML, ни CSS, ни JS

pip install rio-ui

Rio привносит в Python компоненты в стиле React.
Можно выбирать из множества встроенных компонентов и комбинировать их для создания своих собственных компонентов, а потом строить из тех свои приложения

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

🟠GitHub
🟠Доки
🟠Примеры готовых веб-приложений

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
😎 legid — безопасные короткие ID для ссылок, без сервера и базы

Минималистичная TypeScript-библиотека, которая генерирует безопасные, URL-дружественные ID без хранения в БД и без запросов на сервер.

Зачем это нужно?
Обычные ID вроде abc123 легко подменить — например, на admin. legid защищает от этого:

🟠 ID содержит хеш-сигнатуру и соль — проверяется на подделку
🟠 Работает полностью на клиенте
🟠 Проверка на сервере — одной строчкой verifyId(id)
🟠 Без внешних зависимостей
🟠 Безопасно, быстро, удобно

Пример:

const id = await createId({ approximateLength: 12, salt: 'legid:' })
// → "e3N4BRJW2d"

Проверка:


const isValid = await verifyId(id) // true / false

Полезно для:
— PWA / SPA с клиентской маршрутизацией
— генерации ссылок без БД
— frontend-only MVP/демо/форм
— предотвращения предсказуемых ID

Установка:


pnpm add legid


Репозиторий: github.com/shuding/legid

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
#Собес #git
🤔 Что такое HEAD с точки зрения Git?

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

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#статьи
🤯 Разработка на ванильном JS: Стилизация и сайты

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

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
#полезное
🥄 Анимация загрузки для любителей чего-то необычного

https://codepen.io/jkantner/pen/qBbjEVQ

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#ЛитКод
Задача: 680. Valid Palindrome II

Дана строка s, вернуть true, если s может быть палиндромом после удаления не более одного символа из нее.

Пример:
Input: s = "aba"
Output: true


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

1⃣Создайте вспомогательную функцию checkPalindrome, которая принимает строку s и два указателя i и j. Эта функция возвращает логическое значение, указывающее, является ли подстрока s.substring(i, j) палиндромом.

2⃣Инициализируйте два указателя: i = 0 и j = s.length() - 1. Пока i < j, проверьте, совпадают ли символы в индексах i и j. Если нет, это значит, что нам нужно удалить один из этих символов.

3⃣Попробуйте оба варианта, используя checkPalindrome. Верните true, если либо checkPalindrome(s, i, j - 1), либо checkPalindrome(s, i + 1, j) возвращает true. Если мы выходим из цикла while, это значит, что исходная строка является палиндромом. Поскольку нам не нужно было использовать удаление, следует вернуть true.

😎 Решение:
class Solution {
checkPalindrome(s, i, j) {
while (i < j) {
if (s[i] !== s[j]) {
return false;
}
i++;
j--;
}
return true;
}

validPalindrome(s) {
let i = 0;
let j = s.length - 1;

while (i < j) {
if (s[i] !== s[j]) {
return this.checkPalindrome(s, i, j - 1) || this.checkPalindrome(s, i + 1, j);
}
i++;
j--;
}

return true;
}
}


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