Spec-Zone.ru › Deno 2

Начало работы с Deno

Deno (/ˈdiːnoʊ/, произносится dee-no) — это среда выполнения с открытым исходным кодом для JavaScript, TypeScript и WebAssembly с безопасными настройками по умолчанию и удобной для разработчиков средой. Эта страница поможет вам с нуля создать и протестировать работающий проект всего за несколько минут.

Почему Deno?

  • Работает с вашими существующими проектами Node.js. Добавьте Deno в репозиторий с package.json и node_modules — и всё заработает; по мере миграции смешивайте импорты npm: с нативными модулями ES.
  • Современная система модулей. Модули ES с импортом по URL, JSR для типизированных пакетов и рабочие пространства.
  • TypeScript — в первую очередь. Запускайте файлы .ts напрямую. Никакого tsc, этапа сборки или конфигурации.
  • Безопасность по умолчанию. Код выполняется в песочнице без доступа к файлам, сети и переменным среды, пока вы его не предоставите.
  • Полный набор инструментов без лишних настроек. Встроенные форматтер, линтер, средство запуска тестов, инструменты для бенчмаркинга и многое другое. Ничего не нужно настраивать вручную: devDependencies.

Используете ИИ-агента для написания кода?

Вставьте это в Claude Code, Codex, Gemini CLI, OpenCode, Cursor, Pi или любого другого используемого вами агента:

Read deno.com/agents.md and set up Deno in this project

deno.com/agents.md — это одностраничное руководство для агентов, пишущих код: в нём объясняется, что такое Deno, от каких привычных подходов стоит отказаться, если агент уже знаком с Node, и как установить навыки Deno для агента, чтобы он учитывал эту информацию в каждом сеансе. Там также описано, как попросить агента перенести существующий проект Node.

Установка Deno

Установите среду выполнения одной командой:

›_
curl -fsSL https://deno.land/install.sh | sh
# pwsh
irm https://deno.land/install.ps1 | iex

Проверьте установку:

›_
deno --version

Другие варианты, включая менеджеры пакетов и Docker, описаны в разделе Установка.

Создание проекта

Создайте новый проект с помощью deno init:

›_
deno init my_project

Будет создан небольшой готовый к запуску проект:

my_project
├── deno.json      # project configuration: tasks, imports, lint/fmt settings
├── main.ts        # a tiny HTTP server built on Deno.serve
└── main_test.ts   # its tests

Файл deno.json содержит задачи, зависимости и настройки инструментов. Представьте, что это package.json и конфигурации ваших инструментов, собранные в одном файле.

Запуск

›_
$ cd my_project
$ deno -N main.ts
Listening on http://localhost:8000/

Обратите внимание на -N (сокращение от --allow-net). Deno безопасен по умолчанию: код не может обращаться к сети, файловой системе или переменным среды, пока вы не предоставите ему доступ. Откройте URL, чтобы увидеть ответ.

main.ts написан на TypeScript и запустился напрямую: никакого tsc и этапа сборки. Он также построен на стандартном для веба Deno.serve с Request/Response, поэтому вы изучаете саму платформу, а не фреймворк.

Тестирование

В проект уже включены тесты. Запустите их с помощью deno test. Средство запуска тестов встроено, поэтому ничего устанавливать не нужно:

›_
$ deno test
running 2 tests from ./main_test.ts
returns html on / ... ok (12ms)
returns json on /api ... ok (0ms)

ok | 2 passed | 0 failed (15ms)

Добавление зависимости

Подключайте пакеты из npm или JSR с помощью deno install:

›_
deno install express            # any npm package, like npm install
deno install jsr:@std/assert    # the Deno standard library, on JSR

Затем импортируйте пакеты и используйте их:

import { assertEquals } from "@std/assert";

assertEquals(1 + 1, 2);

Использование встроенного набора инструментов

Форматирование, линтинг и многое другое доступны вместе со средой выполнения — ничего настраивать не нужно:

›_
deno fmt     # format your code
deno lint    # catch problems
deno task    # run scripts defined in deno.json

Дальнейшие шаги

  • Настройте редактор. Автодополнение, ошибки в коде и форматирование при сохранении.
  • Запускайте код. Серверы, задачи, веб-API и отладка.
  • Управляйте пакетами. Зависимости, рабочие пространства, публикация.
  • Переходите с Node.js. Перенесите существующий проект.
  • Примеры и руководства. Идеи для вашего следующего проекта.

Последнее обновление: 29 июля 2026 г.

© 2018–2025 the Deno authors
Licensed under the MIT License.
https://docs.deno.com/runtime

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API