Node.JS [ru] | Серверный JavaScript
11.5K subscribers
92 photos
6 videos
25 files
3.17K links
Все о разработке backend части на JavaScript (Node JS).
А так же: Express JS, Next JS, Nest, Socket.IO

Канал на бирже - https://telega.in/c/we_use_js

По вопросам рекламы или разработки: @g_abashkin

РКН: https://vk.cc/cJPGOP
Download Telegram
👀 Аптайм вахтер: мониторинг веб-сервисов с помощью Globalping и уведомлениями в Telegram

Статья исследует, как обеспечить стабильность и доступность сервиса по всему миру. Рассмотрены методы контроля скорости работы сайта и мониторинга проблем маршрутизации и цензуры, выходящие за рамки стандартных аналитических решений.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Новые альтернативы innerHTML

Статья объясняет появление метода setHTMLUnsafe для работы с HTML в браузерах. Разбираются особенности безопасности, отличия от setHTML и innerHTML, а также поддержка в разных браузерах и значение нового подхода к именованию методов.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
⚙️ Асинхронность – не баг, а фича: 4 паттерна, которые спасут ваш распределенный сервис

Представь, что ты отправляешь сообщение в мессенджере, а оно доходит с задержкой в минуту. Бесит? А теперь представь, что у тебя сервис с миллионами пользователей, и каждое их действие должно мгновенно отражаться везде. Звучит как кошмар? Спокойно, есть четыре проверенных способа решить эту головоломку, и они реально работают.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍32
Эпопея шахматных движков: мой опыт в разработке шахматной программы

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

Читать...
🔎 Подборка зарубежных вакансий

Fullstack Developer (JS/Node.js)
🟢Node.js, SvelteKit, Vite, TypeScript, PostCSS, MongoDB
🟢от 4 000 € | более 6 лет

Fullstack Developer (Node.js, React)
🟢Node.js, React, TypeScript, Vite, Zustand, Storybook, Vitest
🟢Уровень дохода не указан | 3–6 лет

Senior Node.js developer
🟢Node.js, SQL, MongoDB, React, Angular
🟢до 5 000 $ | более 6 лет
Please open Telegram to view this post
VIEW IN TELEGRAM
👎4👍1
👩‍💻 CI/CD для начинающих: деплой React-приложения без боли

В статье показан процесс развертывания React-приложения на сервере: от упаковки кода в CI/CD до отправки его в прод. Всё на примере простого to-do приложения.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
1
⚙️ Методы жизненного цикла веб-компонента

Вчера мы изучили различные способы инстанцирования веб-компонента. В статье был упомянут метод жизненного цикла connectedCallback(). Сегодня поговорим об остальных методах жизненного цикла веб-компонентов.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
👩‍💻 Создание веб-компонента с нуля

Сегодня я решил, что мы создадим HTML веб-компонент с нуля. Давайте создадим компонент, показывающий и скрывающий текст при переключении кнопки.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
👩‍💻 Управление Node.js 19 и NPM 9 с помощью NVM

Статья знакомит с использованием NVM для управления версиями Node.js и npm, показывая примеры с Node.js 19 и npm 9. Объясняются преимущества NVM для безопасного обновления и тестирования новых возможностей.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
🗿4
🎞 Я создал Telegram-бота (FYTT), который ищет Telegram-каналы всех ваших подписок на YouTube

Статья рассказывает о создании Telegram-бота для поиска каналов любимых авторов, переместившихся с YouTube. Описан стек технологий: Node.js с telegraf.js, MongoDB с mongoose, Express.js, Google API и Lemnos API для работы с данными.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
3
👩‍💻 Эффективная многопоточность в Node.js: как использовать Atomics

В статье объясняется, как Atomics помогает синхронизировать потоки, предотвращая хаос при одновременной работе с общими данными. Простыми примерами покажем, как управлять многопоточностью.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍52
👩‍💻 Как использовать npm без опаски

Статья предлагает использовать прокси и кэширование для реестра npm с помощью Verdaccio или Nexus, чтобы повысить безопасность и ускорить установку пакетов. Также обсуждаются риски скриптов жизненного цикла npm и способы их безопасного использования.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍31
👩‍💻 Расширения VSCode для комфортной работы с проектами

В статье рассказывается, как настроить рабочее пространство VSCode для разработки. Обзор полезных расширений, которые повышают удобство и продуктивность, и советы по их применению.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
1
👩‍💻 Испортили git rebase?

Git rebase — мощный инструмент, помогающий перенести или объединить один, или несколько коммитов в новый базовый коммит, переписав историю проекта так, чтобы ваша ветка выглядела созданной из другого коммита. Он помогает поддерживать более чистую и линейную историю.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍42
🤔 Как избавиться от WebSockets и сэкономить $1 млн в год: неожиданные решения для оптимизации

Детальный разбор того, как простой анализ производительности помог обнаружить неэффективность WebSocket и оптимизировать передачу данных.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
💬 Различные (и современные) способы переключения контента

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

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
2
👩‍💻 Задачка по NodeJS

Напишите скрипт, который принимает путь к папке, считывает все файлы в этой папке и записывает их имена, размеры (в байтах) и дату последнего изменения в JSON-файл.

Пример использования:

node generateFileInfo.js ./example-folder

"name": "file1.txt",
"size": 1234,
"lastModified": "2023-09-01T12:34:56.789Z"

"name": "file2.js",
"size": 456,
"lastModified": "2023-09-02T14:56:23.123Z"


Решение задачи ⬇️

const fs = require('fs');
const path = require('path');

const folderPath = process.argv[2];

if (!folderPath) {
console.error('Пожалуйста, укажите путь к папке.');
process.exit(1);
}

fs.readdir(folderPath, (err, files) => {
if (err) {
console.error('Ошибка чтения папки:', err.message);
return;
}

const fileInfo =
files.map(file => {
const filePath = path.join(folderPath, file);
const stats = fs.statSync(filePath);

return {
name: file,
size: stats.size,
lastModified: stats.mtime.toISOString(),
};
});

fs.writeFile('files.json', JSON.stringify(fileInfo, null, 2), err => {
if (err) {
console.error('Ошибка записи файла:', err.message);
return;
}
console.log('Информация о файлах сохранена в files.json');
});
});
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🔥1💘1