deno init, начать новый проект
Использование командной строки
deno init [OPTIONS] [DIRECTORY OR PACKAGE]...создаёт базовый проект Deno с файлами скрипта, теста и конфигурации
Параметры
--lib
Создаёт примерный проект библиотеки.
--npm
Создаёт проект npm create-*.
--serve
Создаёт примерный проект для deno serve.
Примеры
$ deno init
✅ Project initialized
Run these commands to get started
// Run the program
deno run main.ts
// Run the program and watch for file changes
deno task dev
// Run the tests
deno test
$ deno run main.ts
Add 2 + 3 = 5
$ deno test
Check file:///dev/main_test.ts
running 1 test from main_test.ts
addTest ... ok (6ms)
ok | 1 passed | 0 failed (29ms)
Подкоманда init создаст два файла (main.ts и main_test.ts). Эти файлы предоставляют базовый пример того, как написать программу Deno и как написать для неё тесты. Файл main.ts экспортирует функцию add, которая складывает два числа, а файл main_test.ts содержит тест для этой функции.
Вы также можете указать аргумент для deno init для инициализации проекта в определённом каталоге:
$ deno init my_deno_project
✅ Project initialized
Run these commands to get started
cd my_deno_project
// Run the program
deno run main.ts
// Run the program and watch for file changes
deno task dev
// Run the tests
deno test
Инициализация пакета JSR
Выполнив deno init --lib, Deno создаст проект, готовый к публикации на JSR.
$ deno init --lib
✅ Project initialized
Run these commands to get started
# Run the tests
deno test
# Run the tests and watch for file changes
deno task dev
# Publish to JSR (dry run)
deno publish --dry-run
Внутри deno.json вы увидите, что записи для name, exports и version заполнены по умолчанию.
{
"name": "my-lib",
"version": "0.1.0",
"exports": "./mod.ts",
"tasks": {
"dev": "deno test --watch mod.ts"
},
"imports": {
"@std/assert": "jsr:@std/assert@1"
}
}
Инициализация веб-сервера
Выполнение deno init --serve создаёт веб-сервер, работающий с deno serve.
$ deno init --serve
✅ Project initialized
Run these commands to get started
# Run the server
deno serve -R main.ts
# Run the server and watch for file changes
deno task dev
# Run the tests
deno -R test
Ваш файл deno.json будет выглядеть так:
{
"tasks": {
"dev": "deno serve --watch -R main.ts"
},
"imports": {
"@std/assert": "jsr:@std/assert@1",
"@std/http": "jsr:@std/http@1"
}
}
Теперь вы можете запустить свой веб-сервер, который отслеживает изменения, выполнив deno task dev.
$ deno task dev
Task dev deno serve --watch -R main.ts
Watcher Process started.
deno serve: Listening on http://0.0.0.0:8000/
Генерация проекта библиотеки
Вы можете добавить флаг --lib для добавления дополнительных параметров в ваш deno.json, таких как "name", "version" и "exports".
$ deno init my_deno_project --lib
✅ Project initialized
Получившийся `deno.json` будет следующим:
{
"name": "my_deno_project",
"version": "0.1.0",
"exports": "./mod.ts",
"tasks": {
"dev": "deno test --watch mod.ts"
},
"license": "MIT",
"imports": {
"@std/assert": "jsr:@std/assert@1"
}
}
© 2018–2024 the Deno authors
Licensed under the MIT License.
https://docs.deno.com/runtime/reference/cli/init