
Node.js позволяет запускать серверные приложения прямо на компьютере разработчика без необходимости настраивать удалённый хостинг. Это удобно для тестирования, отладки и предварительной проверки функционала. Для работы потребуется установить Node.js, менеджер пакетов npm или yarn, а также настроить базовую структуру проекта.
Перед началом важно определить версию Node.js, совместимую с используемыми зависимостями. Проверить её можно командой node -v, а при необходимости обновить через nvm или официальный установщик. После этого создаётся папка проекта и файл package.json, который хранит информацию о зависимостях и настройках сборки.
Для запуска локального сервера достаточно написать несколько строк кода с использованием встроенного модуля http или подключить фреймворк Express, если требуется маршрутизация и обработка запросов. Такой подход позволяет быстро протестировать API, статические файлы и взаимодействие с базой данных до деплоя на продакшен.
Наличие локального сервера помогает не только ускорить разработку, но и точно воспроизвести поведение приложения перед публикацией. Это особенно полезно при работе в команде, где важно, чтобы все участники использовали одинаковую конфигурацию окружения.
Подготовка окружения и установка Node.js

Для начала нужно установить Node.js с официального сайта nodejs.org. На странице загрузки доступны версии с долгосрочной поддержкой (LTS) и текущие релизы. Для стабильной работы локального сервера рекомендуется выбрать LTS-версию. После установки Node.js автоматически добавляется менеджер пакетов npm, который используется для управления зависимостями.
Проверить корректность установки можно в терминале командами node -v и npm -v. Если система выдаёт номера версий, среда готова к работе. В случае ошибок стоит убедиться, что путь к Node.js прописан в переменных окружения PATH.
На macOS и Linux удобнее использовать nvm – менеджер версий Node.js. Он позволяет устанавливать и переключаться между разными версиями без конфликтов. Установка выполняется командой:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/master/install.sh | bash
После этого можно установить нужную версию Node.js с помощью команды nvm install —lts. Такой подход упрощает обновление окружения и обеспечивает совместимость при работе с несколькими проектами.
Для Windows доступен аналогичный инструмент nvm-windows, который устанавливается через исполняемый файл с GitHub. После установки можно управлять версиями Node.js теми же командами, что и в Unix-системах.
Проверка версии Node.js и установка менеджера пакетов npm
После установки Node.js важно убедиться, что система корректно определяет его версию и менеджер пакетов. Это гарантирует, что проект будет работать с нужными зависимостями и без конфликтов.
Проверка выполняется через терминал:
- node -v – показывает текущую версию Node.js;
- npm -v – отображает версию менеджера пакетов.
Если при вводе команд отображаются версии, установка прошла успешно. При отсутствии ответа нужно добавить путь к Node.js в переменные окружения PATH или переустановить Node.js через официальный установщик.
Менеджер npm устанавливается вместе с Node.js, однако иногда требуется его обновление. Для этого используется команда:
npm install -g npm@latest
В некоторых проектах применяют альтернативный менеджер yarn, который отличается более быстрой установкой пакетов и детерминированной структурой зависимостей. Его можно установить командой:
npm install -g yarn
Чтобы убедиться, что npm или yarn работают корректно, создайте тестовую директорию, выполните команду npm init -y и убедитесь, что создан файл package.json. Это подтверждает, что менеджер пакетов готов к использованию в проекте.
Создание нового проекта и файла package.json
Для начала необходимо создать отдельную директорию под проект. Это можно сделать командой:
mkdir my-node-app && cd my-node-app
Файл package.json служит конфигурационным центром проекта. В нём хранятся зависимости, версии пакетов, скрипты и метаданные. Создать его можно автоматически с помощью команды:
npm init -y
Ключ -y позволяет принять значения по умолчанию и быстро сгенерировать файл. После этого можно вручную отредактировать package.json, указав нужные параметры, например:
«main»: «server.js» – указывает основной файл запуска,
«scripts»: {«start»: «node server.js»} – определяет команду для запуска приложения.
Если используется yarn, аналогичный файл создаётся автоматически при выполнении команды yarn init -y.
Такой подход гарантирует единообразие настроек и удобство при работе в команде.
После инициализации проекта рекомендуется добавить файл .gitignore и исключить папку node_modules, чтобы она не попадала в репозиторий. Это предотвратит избыточное хранение зависимостей и ускорит работу с системой контроля версий.
Установка зависимостей проекта через npm или yarn

После создания файла package.json необходимо установить зависимости, которые обеспечивают работу проекта. Обычно в Node.js используются пакеты для сервера, маршрутизации, обработки запросов и подключения к базе данных.
Для установки пакета через npm применяется команда:
npm install express
Если нужно установить несколько пакетов одновременно, их можно перечислить через пробел, например:
npm install express cors dotenv
При использовании yarn синтаксис немного отличается:
yarn add express cors dotenv
Все установленные библиотеки сохраняются в директории node_modules, а список зависимостей фиксируется в package.json и package-lock.json (или yarn.lock). Эти файлы позволяют точно восстановить структуру проекта на другом устройстве.
Для установки пакетов, необходимых только на этапе разработки, используется флаг —save-dev или сокращённо -D. Пример:
npm install nodemon —save-dev
Чтобы восстановить зависимости в новом окружении, достаточно выполнить одну команду – npm install или yarn install. Это создаст локальную копию всех библиотек согласно версиям, указанным в конфигурационных файлах.
Настройка скрипта запуска и структуры проекта
После установки зависимостей необходимо определить структуру проекта и задать скрипт для запуска сервера. Это позволит запускать приложение одной командой и упростит навигацию по файлам.
Базовая структура проекта может выглядеть так:
- package.json – конфигурация проекта;
- server.js – основной файл сервера;
- /routes – маршруты API;
- /controllers – логика обработки запросов;
- /models – взаимодействие с базой данных;
- /public – статические файлы (HTML, CSS, JS);
- /.env – конфигурационные переменные окружения.
Чтобы задать команду для запуска сервера, откройте package.json и добавьте в раздел «scripts» строку:
«start»: «node server.js»
После этого сервер можно запустить командой:
npm start или yarn start
Для автоматического перезапуска при изменении файлов рекомендуется использовать утилиту nodemon. После её установки в раздел «scripts» добавляется команда:
«dev»: «nodemon server.js»
Теперь при выполнении npm run dev сервер будет обновляться без ручной перезагрузки. Такая настройка ускоряет процесс разработки и уменьшает вероятность ошибок при повторных изменениях кода.
Запуск локального сервера с помощью встроенных модулей Node.js
Node.js позволяет запускать сервер без дополнительных библиотек, используя встроенный модуль http. Для этого создаётся основной файл, например server.js, с минимальной конфигурацией:
const http = require(‘http’);
const port = 3000;
const server = http.createServer((req, res) => {
res.statusCode = 200;
res.setHeader(‘Content-Type’, ‘text/plain’);
res.end(‘Сервер работает’);
});
server.listen(port, () => {
console.log(`Сервер запущен на порту ${port}`);
});
После сохранения файла сервер запускается командой:
node server.js
Для проверки работы можно открыть браузер и перейти по адресу http://localhost:3000. В ответ должна отобразиться строка «Сервер работает».
Использование встроенного модуля подходит для тестовых и простых проектов. Он позволяет контролировать обработку запросов и заголовков без сторонних зависимостей, что полезно для изучения основ Node.js и отладки базовой логики сервера.
Использование фреймворка Express для простого запуска сервера
Express облегчает настройку локального сервера, обработку маршрутов и работу с JSON по сравнению с модулем http. Для установки используйте команду:
npm install express или yarn add express
Создайте файл server.js и добавьте базовую конфигурацию сервера:
const express = require(‘express’);
const app = express();
const port = 3000;
app.use(express.json());
app.get(‘/’, (req, res) => { res.send(‘Сервер Express работает’); });
app.listen(port, () => { console.log(`Сервер запущен на порту ${port}`); });
Таблица основных методов Express для быстрого старта:
| Метод | Описание | Пример |
|---|---|---|
| app.get(path, callback) | Обрабатывает GET-запросы по указанному пути | app.get(‘/users’, (req, res) => {…}) |
| app.post(path, callback) | Обрабатывает POST-запросы | app.post(‘/login’, (req, res) => {…}) |
| app.use(middleware) | Подключает промежуточное ПО | app.use(express.urlencoded({ extended: true })) |
| app.listen(port, callback) | Запускает сервер на указанном порту | app.listen(3000, () => {…}) |
Использование Express ускоряет разработку локального сервера, упрощает обработку запросов и интеграцию с другими библиотеками, например для работы с базами данных или статическими файлами.
Настройка автоматического перезапуска с помощью nodemon
Nodemon позволяет автоматически перезапускать сервер при изменении файлов проекта, что ускоряет разработку и снижает вероятность ошибок из-за ручного перезапуска.
Для установки nodemon выполните команду:
npm install -g nodemon
Для добавления в проект как зависимость разработки используйте:
npm install —save-dev nodemon
В файле package.json рекомендуется создать отдельный скрипт для запуска с nodemon. Пример:
«scripts»: { «dev»: «nodemon server.js» }
После этого сервер можно запускать командой:
npm run dev или yarn dev
Nodemon поддерживает конфигурацию через файл nodemon.json. Пример минимальной настройки:
{
«watch»: [«server.js», «routes/», «controllers/»],
«ext»: «js,json»,
«ignore»: [«node_modules/»]
}
Данная конфигурация следит за изменениями в указанных директориях и файлах с расширениями .js и .json, игнорируя папку node_modules. Это позволяет поддерживать стабильный цикл разработки без ручных перезапусков сервера.
Вопрос-ответ:
Как проверить, что Node.js и npm установлены корректно?
Чтобы убедиться в корректной установке, откройте терминал и выполните команды node -v и npm -v. Первая команда покажет версию Node.js, а вторая — версию менеджера пакетов. Если вывод содержит номера версий, среда готова к использованию. В случае ошибки нужно проверить переменные окружения PATH или переустановить Node.js с официального сайта.
Как создать проект Node.js с готовым файлом package.json?
Создайте новую директорию для проекта и перейдите в неё командой cd имя_папки. Затем выполните npm init -y, чтобы автоматически сгенерировать package.json с настройками по умолчанию. После этого можно вручную добавить скрипты запуска, указать основной файл через «main»: «server.js» и при необходимости подключить дополнительные метаданные.
Какие команды использовать для установки зависимостей через npm и yarn?
Для npm применяются команды npm install имя_пакета для обычной зависимости и npm install имя_пакета —save-dev для зависимостей разработки. Для yarn аналогичные команды выглядят как yarn add имя_пакета и yarn add имя_пакета —dev. После установки пакеты сохраняются в node_modules, а их версии фиксируются в package-lock.json или yarn.lock.
Чем отличается запуск сервера через http и через Express?
При использовании встроенного модуля http необходимо вручную настраивать обработку запросов, заголовки и маршруты. Express предоставляет готовые методы для обработки GET и POST-запросов, упрощает работу с JSON и позволяет подключать промежуточное ПО. С Express меньше кода требуется для запуска сервера и настройки маршрутов, что удобно для тестирования и разработки API.
Как настроить автоматический перезапуск сервера при изменении файлов?
Для этого используется утилита nodemon. Её можно установить глобально через npm install -g nodemon или добавить как зависимость разработки npm install —save-dev nodemon. В package.json создайте скрипт «dev»: «nodemon server.js». При запуске npm run dev сервер будет автоматически перезагружаться при изменении файлов, указанных в конфигурации nodemon.
Как правильно настроить структуру проекта Node.js для локального сервера?
Для удобной работы рекомендуется разделить проект на отдельные директории: /routes для маршрутов, /controllers для логики обработки запросов, /models для взаимодействия с базой данных и /public для статических файлов. Основной файл сервера обычно называется server.js, а конфигурация и зависимости хранятся в package.json. Скрипт запуска можно добавить в раздел «scripts», например «start»: «node server.js». Такая организация облегчает поддержку кода и добавление новых функций.
Можно ли использовать Express и одновременно nodemon для локальной разработки?
Да, это распространённый подход. Express упрощает настройку маршрутов и обработку запросов, а nodemon автоматически перезапускает сервер при изменении файлов. Для этого устанавливают nodemon как зависимость разработки npm install —save-dev nodemon и создают скрипт в package.json: «dev»: «nodemon server.js». После запуска npm run dev сервер будет отслеживать изменения в файлах и обновляться без ручного перезапуска, что ускоряет работу над проектом.
