Как стать автором
Обновить
70.33

Node.JS *

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

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

SQRT.app или о том как, сократить затраты в автоматизации тестирования

Уровень сложности Простой
Время на прочтение 7 мин
Количество просмотров 590
Тестирование IT-систем *Node.JS *GitHub *Data Engineering *
Из песочницы

Всем привет, меня зовут Виталий, я являюсь Test automation engineer и по совместительству один из создателей библиотеки который называется sqrt.app. В IT-сфере я около 6 лет и успел повидать много говна решений но сегодня я бы хотел рассказать про то - зачем любому инженеру будет полезно использовать данный тул.

узнать про sqrt.app
Рейтинг 0
Комментарии 4

Новости

Создание простого SPA на VueJs с использованием CMS Strapi

Уровень сложности Средний
Время на прочтение 10 мин
Количество просмотров 2.9K
CSS *JavaScript *HTML *Node.JS *VueJS *
Из песочницы

Данное руководство составлено на основе некоторого опыта, который был получен из книг и официальной документации. Вашему вниманию будет представлено 2 варианта написания простых в поддержке сайтов на Vue.js (с использованием backend систем и без). 

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

Во второй части мы рассмотрим более сложный вариант, с использованием опен сорс CMS решения для управления данными сайта. Весь код в данном руководстве представлен в синтаксисе javascript/hml/css и bash.

Читать далее
Всего голосов 3: ↑3 и ↓0 +3
Комментарии 8

Стартап в Соло. Часть 4: техническая реализация

Уровень сложности Средний
Время на прочтение 10 мин
Количество просмотров 2.3K
Разработка веб-сайтов *JavaScript *Программирование *Node.JS *Развитие стартапа
Кейс

В этой статье хочу рассказать, как технически устроен мой Telegram чат для сайта, из каких компонентов состоит и с какими подводными камнями я сталкивался.

Читать далее
Всего голосов 12: ↑12 и ↓0 +12
Комментарии 2

Вечный RnD: chunk flushing для серверного рендеринга React + WMF

Уровень сложности Сложный
Время на прочтение 9 мин
Количество просмотров 1.3K
Блог компании билайн Node.JS *ReactJS *
Из песочницы

Все говорят про webpack-module-federation - микрофронты тут, микрофронты там.
— "А мы уже внедрили", "а мы уже построили микрофронтовую-архитектуру", "мы релизим независимо".

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

На этом фоне доклады, повествующие о динамическом развертывании k8s pod'ов с версиями микрофронтов, указанных в заголовках браузера (на базе argo-cd) производят вау-эффект. Но даже все эти истории имеют один общий недостаток.

На вопрос:
— А как вы реализовали SSR?

Следует ответ:
— Мы не стали этого делать, у нас админка / дэшборд / MVP / *.

Читать далее
Всего голосов 15: ↑14 и ↓1 +13
Комментарии 11

Истории

Node.JS: заменили модуль SSH2 на OpenSSH и снизили задержки eventloop в 15 раз

Уровень сложности Средний
Время на прочтение 5 мин
Количество просмотров 3.2K
Блог компании Тензор Высокая производительность *JavaScript *Программирование *Node.JS *
Кейс

В нашем сервисе мониторинга и анализа PostgreSQL доступ к серверам осуществляется по протоколу SSH. В качестве ssh-клиента мы используем популярный модуль SSH2 , однако при передаче данных большого объема этот модуль вносит существенные задержки в event loop. Как их можно снизить - расскажем в этой статье.

Читать далее
Всего голосов 12: ↑12 и ↓0 +12
Комментарии 3

Как фронтендер подписывать CSR учился

Уровень сложности Средний
Время на прочтение 14 мин
Количество просмотров 1.6K
JavaScript *Node.JS *
Из песочницы

В статье рассказываю про опыт изучения Certificate Signing Request (CSR) формата. О том, что такое PEM, DER, какова структура самого CSR файла и как последний подписывается. А также поделюсь, с какими сложностями в процессе изучения я столкнулся.

Читать далее
Всего голосов 5: ↑5 и ↓0 +5
Комментарии 2

Веб-скрейпинг с помощью JavaScript и Node.js — исчерпывающее руководство

Время на прочтение 11 мин
Количество просмотров 4K
Блог компании OTUS JavaScript *Node.JS *
Перевод

JavaScript сегодня стал одним из наиболее предпочтительных языков для веб-скрейпинга (web scraping). Его способность извлекать данные из SPA (Single Page Application) [одностраничное приложение] повышает его популярность. Разработчики могут с легкостью автоматизировать свои задачи при помощи таких библиотек, как Puppeteer и Cheerio, которые доступны в JavaScript.

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

Читать далее
Всего голосов 11: ↑9 и ↓2 +7
Комментарии 2

Бот из машины. Как инженеру сократить время на диагностику дисков

Уровень сложности Простой
Время на прочтение 7 мин
Количество просмотров 4.5K
Блог компании Selectel Node.JS *API *Накопители
Кейс


Привет, Хабр! Меня зовут Дмитрий, я старший системный инженер в дата-центре Selectel, работаю с серверами и клиентским оборудованием.

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

В статье я расскажу, как написал бота, запустил его в облаке и автоматизировал замену накопителей в выделенных серверах.
Читать дальше →
Всего голосов 53: ↑53 и ↓0 +53
Комментарии 12

Playwright и Puppeteer в 2023 году: что выбрать

Уровень сложности Простой
Время на прочтение 11 мин
Количество просмотров 2.2K
Блог компании OTUS JavaScript *Node.JS *Тестирование веб-сервисов *
Обзор
Перевод

Дебаты по поводу выбора между Playwright и Puppeteer — это большая дискуссия, поскольку они обе являются фантастическими библиотеками Node.js для автоматизации браузера. Хотя эти библиотеки делают практически одно и то же, между Puppeteer и Playwright есть несколько заметных различий.

Читать далее
Всего голосов 12: ↑8 и ↓4 +4
Комментарии 2

Как сайты определяют ботов? Деобфускация Akamai Bot Manager 2.0

Уровень сложности Средний
Время на прочтение 47 мин
Количество просмотров 11K
JavaScript *Node.JS *Реверс-инжиниринг *

Akamai Technologies - американская компания, занимающаяся защитой веб-ресурсов от ботов с помощью своего продукта Bot Manager. В её портфолио числятся такие гиганты ритейла, как Nike, Adidas и Asos, для которых особенно важен контроль за ботами, автоматизирующими процесс выкупа редких/лимитированных товаров с целью их перепродажи по завышенной цене. В данной статье мы взглянем на скрипт антибота Akamai и рассмотрим, какие методы обнаружения через JavaScript в нём используются. Не знаете почему обнаруживается ваш selenium? Добро пожаловать!

Читать далее
Всего голосов 105: ↑105 и ↓0 +105
Комментарии 36

Как мы быстро запустили мобильное приложение и споткнулись о свой успех

Уровень сложности Средний
Время на прочтение 13 мин
Количество просмотров 5.9K
Блог компании Группа НЛМК JavaScript *Node.JS *API *
Туториал

Привет, Хабр! Мы крупная производственная компания с 50К+ сотрудников, и в 2019 году поняли, что нам нужно мобильное приложение. Срок реализации 5 месяцев. Какой стек вы бы выбрали при такой скорости? Мы выбрали нативные Kotlin и Swift. Поначалу запилили всего 6 сервисов (новости, зарплатный лист, отпуска, блоги, регистрацию опасностей, выдачу СИЗ), и даже при том, что нанесли минимальную пользу, приложение очень зашло, количество пользователей начало расти лавинообразно. И тут мы поняли, что серверная часть на node.js + PostgreSQL создана без всякой мысли о развитии и масштабировании, решала исключительно локальные задачи. Все было на неоптимальной монолитной архитектуре, развивать и поддерживать которую просто нельзя.

Расскажу, как мы решили проблему.

Читать далее
Всего голосов 21: ↑18 и ↓3 +15
Комментарии 11

Подготовка шаблона приложения на Typescript с Nest, Nuxt 3 и Docker

Уровень сложности Средний
Время на прочтение 12 мин
Количество просмотров 2.4K
Node.JS *API *DevOps *VueJS *TypeScript *
Туториал

Решил описать свой подход построения окружения на Typescript с Nest на бекенде, Nuxt (SPA) на фронтенде. Все заворачивается в один docker‑образ и запускается как standalone приложение c nginx, healthcheck»ами, тестами и ш…широкой сферой применения.

Читать далее
Всего голосов 8: ↑8 и ↓0 +8
Комментарии 2

Создание «Google Sheets» через Websockets на Node.js

Время на прочтение 10 мин
Количество просмотров 3.1K
Разработка веб-сайтов *JavaScript *Программирование *Node.JS *
Туториал

Введение

Всем привет! Меня зовут Герман Панов и в этой статье мы разработаем табличный редактор - аналог Google Sheets (в упрощенном виде), работающий на основе вебсокетов, чтобы познакомиться со способами применения этой технологии в браузерах.

Поскольку цель - ознакомление, код будет не очень «чистым», но для базового примера этого будет достаточно. В качестве серверной платформы будем использовать Node.js, также потребуется пакет ws, предоставляющий API для работы с вебсокетами на сервере.

Читать далее
Всего голосов 9: ↑9 и ↓0 +9
Комментарии 9

Стартуем микросервис на Node.js + fastify + Typescript + prisma + mongodb + grpc

Уровень сложности Средний
Время на прочтение 8 мин
Количество просмотров 5.4K
Node.JS *MongoDB *TypeScript *
Из песочницы

Зачастую возникает необходимость начать новый микросервис.

Вот и у меня совсем недавно возникла такая потребность. А ведь еще хочется и чего-то новенького попробовать.

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

Читать далее
Всего голосов 12: ↑12 и ↓0 +12
Комментарии 4

Пишем умный поиск по коду с Open AI

Уровень сложности Средний
Время на прочтение 6 мин
Количество просмотров 3.8K
Python *JavaScript *Node.JS *TypeScript *Natural Language Processing *
Из песочницы

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

Читать далее
Всего голосов 12: ↑11 и ↓1 +10
Комментарии 3

filebump — хостинг файлов по API / свой локальный upload.io

Время на прочтение 3 мин
Количество просмотров 1.3K
Анализ и проектирование систем *Node.JS *

У нас несколько сервисов, где пользователи загружают файлы, отправляют файлы, обмениваются файлами.

И делать в каждом сервисе свой сервер, где можно было бы получить ссылку на файл, передать через очередь, отправить, обработать - может быть не надо?

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

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

Поэтому появился filebump - простой http сервер, где мы можем загружать, хранить и скачивать файлы.

Читать далее
Всего голосов 7: ↑2 и ↓5 -3
Комментарии 10

Chrome Headless против cloudflare JS challenge

Уровень сложности Средний
Время на прочтение 41 мин
Количество просмотров 8.8K
JavaScript *Node.JS *Реверс-инжиниринг *
Из песочницы

Автоматизация сбора информации с различных ресурсов - обычная задача для людей разных сфер деятельности. Жаль, что не всегда бывает достаточно сделать простой GET запрос и разобрать полученный html. Веб-сайты, с которых собираются данные, принимают защитные меры для предотвращения автоматизированных запросов. Одной из таких мер является использование cloudflare. Сегодня мы посмотрим, как cloudflare выявляет ботов через javascript и коснёмся темы деобфускации скриптов.

Читать далее
Всего голосов 82: ↑82 и ↓0 +82
Комментарии 6

Разработка клиент-серверного приложения с помощью Next.js и TypeScript. Часть 2. Разработка клиента

Уровень сложности Сложный
Время на прочтение 33 мин
Количество просмотров 3K
Блог компании Timeweb Cloud Разработка веб-сайтов *JavaScript *Node.JS *TypeScript *
Туториал


Привет, друзья!


В этой серии из 2 статей-туториалов мы с вами продолжаем разрабатывать клиент-серверное (фуллстек — fullstack) приложение с помощью Next.js и TypeScript.



  1. Наше приложение будет представлять собой блог — относительно полноценную платформу для публикации, редактирования и удаления постов.
  2. Мы реализовали собственный сервис аутентификации на основе JSON Web Tokens и HTTP-куки.
  3. Данные пользователей и постов будут храниться в реляционной базе данных SQLite.

В первом туториале мы подготовили и настроили проект, а также реализовали серверную часть приложения с помощью интерфейса роутов (API Routes), во втором — разработаем клиента и проверим работоспособность приложения.


Обратите внимание: данный туториал рассчитан на разработчиков, которые имеют некоторый опыт работы с React и Node.js.


Для тех, кого интересует только код, вот соответствующий репозиторий.


Интересно? Тогда прошу под кат.

Читать дальше →
Всего голосов 22: ↑19 и ↓3 +16
Комментарии 2

10 советов по оптимизации приложения NodeJS

Время на прочтение 4 мин
Количество просмотров 3.3K
Node.JS *
Туториал
Recovery mode

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

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

Читать далее
Всего голосов 17: ↑1 и ↓16 -15
Комментарии 4

Масштабирование NodeJS приложений, теория и практика

Время на прочтение 5 мин
Количество просмотров 4K
JavaScript *Nginx *Node.JS *API *
Из песочницы

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

Читать далее
Всего голосов 12: ↑3 и ↓9 -6
Комментарии 4

Вклад авторов

Работа