Отличная памятка по Git, которая покрывает весь жизненный цикл работы с репозиторием. От создания проекта
git init
до публикации изменений git push
.На картинке — полный workflow и более 40 команд, разбитых по категориям: основы, создание, обновление, просмотр, ветвление и отслеживание файлов.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12❤6🔥6👎1
This media is not supported in your browser
VIEW IN TELEGRAM
Каждый день появляются новые публикации: от простых туториалов до обзоров фреймворков, паттернов и рефакторинга.
Полезно как для новичков, так и для тех, кто хочет быть в курсе трендов.
📌 Оставляю ссылочку: dev.to/t/node
Please open Telegram to view this post
VIEW IN TELEGRAM
❤7👍4🔥4
Нужно принять строку с username и выдать корректную ссылку формата
https://yangx.top/user
. Пользователь может ввести @, пробелы, нижний регистр и мы всё нормализуем.В этой задаче:
• Очищаем ввод от @ и пробелов.
• Формируем финальную ссылку.
• Вызываем готовую функцию и получаем ссылку для профиля.
Может пригодиться для автоматизации и парсеров.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤8👍6🔥5👎1
В этой статье:
• Токены (access и refresh) сохраняются в HttpOnly куки
• Перед каждым запросом проверяется наличие access-токена
• Если токен отсутствует — отправляется запрос на обновление через refresh
• Всё происходит без участия пользователя
🔊 Читать статью на Habr!
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6👍4🔥4
Анимация загрузки в консоли!
Если твой скрипт что-то делает несколько секунд то можно удобно показать, что он жив. В консоли сделаем лоадер, который крутится, пока идёт задача. Всё это без библиотек.
Пример кода:
🔥 Этот лоадер можно встраивать в консольные утилиты, сборки, загрузки или любые скрипты.
⚙ Backend Ready | #практика
Если твой скрипт что-то делает несколько секунд то можно удобно показать, что он жив. В консоли сделаем лоадер, который крутится, пока идёт задача. Всё это без библиотек.
Пример кода:
const frames = ["|", "/", "-", "\"];
let i = 0;
const spinner = setInterval(() => {
process.stdout.write("\r" + frames[i++ % frames.length]); // перезаписываем строку
}, 100);
setTimeout(() => clearInterval(spinner), 3000); // остановка
🔥 Этот лоадер можно встраивать в консольные утилиты, сборки, загрузки или любые скрипты.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8❤4🔥4
Полный практический разбор современного процесса деплоя backend-приложений. На базе простого проекта изучаются ключевые этапы: создание Docker-образа, настройка docker-compose, конфигурация удалённого сервера, работа с GitLab CI/CD и пайплайнами.
Ссылочка на плейлист: YouTube🖤
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥9👍4❤1
Каждый запрос проходит через цепочку функций: логирование, проверка, обработка, ошибки.
Понимание req, res, next и порядка это контроль над потоком и качественная архитектура.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤7🔥5👍4🤝1
Например методы
map()
, filter()
, find()
и другие — это быстрый способ трансформировать, искать и фильтровать данные в массивах.На картинке — 7 ключевых методов массивов.
Сохрани, чтобы не забыть!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🔥5🤝1
Ты хочешь открыть файл и получить текст в нужной кодировки? Вот два рабочих способа:
•
fs.readFile(..., "utf8")
— самый быстрый и очевидный. Указываешь "utf8" прямо при чтении, и сразу получаешь строку.•
Buffer.toString("utf8")
— читаешь как буфер, а потом вручную расшифровываешь. Это даёт контроль, можно обработать другие кодировки, делать проверки и отложенное декодирование.🔥 — если узнал что-то новое
🤝 — если уже пользовался
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8❤3👍3🤝1
❤9👍6🔥5