Обновить
64K+

Node.JS *

Среда для запуска JavaScript-приложений

53,17
Рейтинг
Сначала показывать
Порог рейтинга
Уровень сложности

Пишем продвинутый планировщик с использованием React, Nest и NX. Часть 3: работа с задачами

Время на прочтение8 мин
Охват и читатели5.5K

Друзья, всем привет! Меня зовут Игорь Карелин, я frontend-разработчик в компании Домклик. В прошлой части мы разобрали, как создать аутентификацию с помощью библиотеки Passport, а сегодня мы рассмотрим такие манипуляции, как добавление, редактирование, удаление и получение задач. Для начала давайте разберём HTTP и некоторые типы запросов.

Читать далее

Выбор технологий и ECS: почему архитектура быстрее языка — создание сервера для онлайн ММО игр на PHP, ч. 6

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели5.7K

Сервер упирается в пятьсот игроков — и начинается перебор технологий: UDP вместо TCP, Node.js, Redis, очереди. Разбираю, почему ни одна из них не спасает плохую архитектуру, и показываю сущностно-компонентную схему, на которой держится сервер.

Читать далее

Короткая шпаргалка по lockfile

Время на прочтение5 мин
Охват и читатели16K

Привет, меня зовут Анастасия Пласкевич, я фронтенд-разработчик. Недавно на проекте я разбиралась с зависимостями и углубилась в эту тему так, что собрала небольшой доклад о том, что такое Lockfile, как работает yarn.lock, как решать проблемы с зависимостями в проекте и делать базовую проверку безопасности, а доклад адаптировали в эту статью.

Статья будет полезна разработчикам JS/TS приложений, которые столкнулись с некорректным поведением пакетов в своем проекте, или со старым кодом, который содержит уязвимости. Базовый аудит зависимостей будет уместен на любом проекте: всегда находятся вещи, которые можно поправить. 

Читать далее

Телепортируем мемы в telegram, или как вернуть нажитое непосильным трудом

Время на прочтение13 мин
Охват и читатели5K

По разным причинам я уже как пару лет я не использовал ВК для связи с друзьями/коллегами - все ушли в telegram. Но в ВК все равно приходилось заходить, так как там осталось самое дорогое - группы с мемами, картиночками, анекдотами и всякое такое. Самому смотреть неудобно, друзьям - не отправить. Если интересно, как я решил эту проблему за один вечер - добро пожаловать под кат.

Читать далее

Лучшие практики безопасности Node.js

Время на прочтение11 мин
Охват и читатели10K

Назначение

Этот документ призван расширить текущую модель угроз и предоставить подробные рекомендации по обеспечению безопасности приложения Node.js.

Читать далее

Немного о Fastify

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели10K

Когда Node.js‑приложение начинает упираться в ресурсы, причина часто скрывается глубже, чем кажется: в устройстве обработки запросов, расширении объектов ответа и архитектуре плагинов.

В статье разберём, какие механизмы Fastify помогают снизить накладные расходы, упростить структуру приложения и сохранить управляемость по мере роста нагрузки.

Читать далее

MVP за выходные: dashboard для Телеграм-ботов

Время на прочтение5 мин
Охват и читатели5K

Скорее всего, вы слышали о «12 стартапах за 12 месяцев» или о продуктах, которые родились на хакатонах. Такие истории всегда вдохновляли меня, поэтому я придумал свой челлендж: я сделал простой сервис за выходные.

Читать далее

Нюансы поддержки npm в Deno

Время на прочтение5 мин
Охват и читатели3.1K

Всем, привет! Меня зовут Данильян, я работаю в Самокате фронтенд-разработчиком и разрабатываю бэкофисное приложение с использованием React. Помимо работы, у меня есть несколько сайд-проектов, в которых я широко использую Deno. В последнее время этот проект радует новыми фичами чуть ли не каждую неделю и об одной из них я хотел бы рассказать в этом посте.

Читать далее

Как собрать, покрыть тестами и опубликовать TypeScript‑пакет в npm в 2022 году

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели12K

Опубликовать TypeScript‑пакет в npm кажется простой задачей, пока не приходится разбираться со сборкой, типами, тестами и содержимым релиза.

В статье пошагово соберём библиотеку, настроим Jest и проверим пакет перед публикацией.

Читать далее

Что нужно знать, перед тем как использовать Prisma у себя в проекте

Время на прочтение8 мин
Охват и читатели12K

Привет, Хабр!

Основным языком разработки у нас, в TIMELESS, является TypeScript, как на frontend,  так и на backend.  Поэтому в рамках идеи типизации всего и вся для работы с БД мы выбрали Prisma, которая позиционирует себя как “Next generation ORM for Node.js and TypeScript”.

Спустя год применения Prisma хотелось бы поделиться опытом ее использования при работе с PostgreSQL из Node.js приложения.

Читать далее

Фронтендерская история

Время на прочтение18 мин
Охват и читатели13K

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

Прогресс в этой области действительно поражает. От галлюциногенных картинок DeepDream до шедевров от Stable Diffusion прошло каких-то 8 лет. И ведь это не единственный лидер сейчас. Здесь же мы имеем Midjorney, Imagen, Dalle, Kandinsky в конце концов. И знаете, мне это что-то напоминает.

Что это напоминает?

Node.js for ruby developers

Время на прочтение12 мин
Охват и читатели1.8K

Можно ли, зная Ruby, писать код на Node.js? А можно ли с командой Ruby-разработчиков успешно поддерживать и развивать большой легаси монолит на ноде? Можно! А как, расскажет Дмитрий Матвеев, СТО «Поток.Диджитал» и спикер Ruby Russia 2022.

Интересно, а что там дальше?

Как NodeJS обрабатывает множественные запросы?

Время на прочтение4 мин
Охват и читатели5.7K

Существует много путаницы по поводу конкурентности и параллелизма. Некоторые люди используют эти термины как взаимозаменяемые, но на самом деле они означают две разные вещи.

Читать далее

Ближайшие события

server-queryselector aka парсим html в nodejs

Время на прочтение6 мин
Охват и читатели5.3K

Итак, мы хотим получить информацию с веб сайта — это можно сделать в 3 шага

1) Получить html сайта (пропустим этот шаг)

2) Распарсить html строку и создать dom. — builderdom.js

3) Найти нужные dom_node из dom по кссселекторам.

3.1) Распарсить строку кссселекторов и создать дерево для поиска. — cssselectorparser.js
3.2) Отфильтровать дом_ноды по дереву кссселекторов и найти нужные. — treeworker.js

Читать далее

Как мы в команде пришли к low-code и закрываем задачи бэка силами фронта

Время на прочтение11 мин
Охват и читатели9.7K

В статье расскажу, как наша команда начала закрывать бэк силами фронтов, как мы искали идеальный фреймворк, прошли путь от PHP до Node.js, а потом поняли, что делаем low-code. Теперь мы можем закрывать потребность клиентов на несложный бэкенд, не превращаясь в фуллстек-команду.

Читать далее

Гладко было на бумаге, или почему не стоит чрезмерно доверять туториалам

Время на прочтение19 мин
Охват и читатели4.6K

Такая история всегда начинается одинаково. Вам показывают демку, в которой набор проблем, ранее казавшийся сложным, решается на раз — достаточно запустить некий Волшебный Инструмент. Зачастую такой инструмент рекомендуют Большие Тузы из отрасли, либо не только рекомендуют, но и сами поддерживают. У вас в организации отыскиваются коллеги, ратующие за то, чтобы немедленно взять эту технологию на вооружение. Буквально наутро этот новый инструмент приравнивается к «решению всех наших проблем».

Вскоре запускается внутрикорпоративная инициатива. Среди начальства найдутся те, кто решат превратить Волшебный Инструмент в важный проект, и Волшебный Инструмент начинают навязывать в командах. Именно тут пробегают первые трещинки, когда команды, относительно индифферентные к Волшебному Инструменту, реально начинают им пользоваться. «Он же не делает всего того, чем нам приходится сейчас заниматься, а ещё не учтены пограничные случаи — в них с Инструментом работать гораздо сложнее, чем нам рассказывали».

К тому моменту, как его обсуждение доходит до руководителей высшего звена, инструмент уже раскручен в пресс-релизах. Вы видите статьи в духе «Технология X морально устарела, время обзаводиться Волшебным Инструментом». Те из вас, кто не так давно работает в технической отрасли, могут предположить, что, пожалуй, была сделана какая-то добросовестная оценка, призванная проверить, в самом ли деле Волшебный Инструмент так хорош, или безопасен, или уместен именно в вашем бизнесе. Нет, вы ошибаетесь. 

Читать далее

Yandex Object Storage — реализация SignedURL для загрузки данных в bucket на NodeJS

Время на прочтение3 мин
Охват и читатели15K

Доброго времени суток, Хабр!

Несколько лет назад, я участвовал в разработке одного проекта, и как задачу, мне (тогда еще зеленому джуну) поставили реализовать систему загрузки медиа файлов на AWS S3. Важным условием было реализовать конкретно SignedURL.

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

Ниже я немного расскажу что вообще такое подписанные ссылки, как перейти на Yandex Object Storage(YOS), и почему YOS и AWS S3 - это одно и то же!

Читать далее

Пишем бота на JavaScript для Minecraft (1.8-1.18) / Часть 10-14

Время на прочтение2 мин
Охват и читатели5.5K

Здравствуйте, уважаемые читатели Хабра! Продолжаем писать бота для Minecraft(1.8 - 1.18) с помощью библиотеки mineflayer. С прошлыми уроками можете ознакомиться ТУТ.

Читать далее

Пример использования API поиска Algolia на примере телеграм бота

Время на прочтение3 мин
Охват и читатели5.9K

В данном примере разберем, как пользоваться API поиска в известеом поисковом сервисе Algolia.

Читать далее

Вышла deno 1.27. Подробности об улучшениях под катом

Время на прочтение10 мин
Охват и читатели2.8K

Deno 1.27 выпущена с фичами и изменениями в списке ниже:


  • Улучшение языкового сервера/IDE
  • Улучшение совместимости с npm
  • Онлайн-API navigator.language
  • Улучшение deno task
  • Проверка обновлений
  • Изменения в API Deno
  • Обновление deno lint
  • V8 10.8
  • Улучшение совместимости с Node.js
  • Изменение в API стандартных библиотек

Детали — под катом к старту курса по Fullstack-разработке на Python.

Читать дальше →