init
Start Deno projects faster with deno-init
, a simple executable that scaffolds the project structure for you.
Please note this module’s API is not stable yet and there may be breaking changes on
0.x
version increments.
Requirements
deno
installed and available on a terminal.
Installation
Use the deno install
command to install or upgrade the executable. If you download it without specifying a version the latest will be installed.
deno install --allow-read --allow-write -n deno-init https://deno.land/x/init@0.10.0/mod.ts
deno-init
can also be installed directly from GitHub:
deno install --allow-read --allow-write -n deno-init https://raw.githubusercontent.com/GJZwiers/deno-init/main/mod.ts
Basic Usage
deno-init
This will prompt you for the following:
- TypeScript? (default
y
) - Entrypoint? (default
mod.ts
) - Dependency entrypoint? (default
deps.ts
) - Debug configuration? (default
y
).
Choosing all defaults will create the following structure in the current directory:
.
│ .gitignore
│ deps.ts
│ mod.ts
│
└───.vscode
│ │ launch.json
│ │ settings.json
The created .gitignore
will ignore .vscode/
and settings.json
will contain "deno.enable": "true"
, while launch.json
will contain a basic debug configuration.
Available Options
Use --help
to print all available options. In addition, they are listed below:
Use --yes
or -y
if you simply want to use all the default values without being prompted:
deno-init -y
deno-init
will not overwrite files or directories unless --force
is passed.
Use --editor
or -e
to generate editor-specific configuration for a project. At this moment only the option vscode
is supported and it is also set as the default.
deno-init --editor vscode
Use --force
or -f
in case you explicitly want to overwrite existing files. This can be helpful to re-initialize but use with caution.
deno-init -f
Use --name
or -n
to make a new directory in the current directory where the files will be placed.
deno-init --name my_deno_project
--template
or -t
can be combined with deno-init
subcommands to create a project from a template.
deno-init --template oak
Subcommands
Use --help
to get more detailed information on any of the subcommands.
api
Use to initialize a Deno RESTful API from a template.
deno-init api --template opine
Available template: opine
, restful_oak
.
cli
Use to initialize a Deno Command Line Interface (CLI) from a template.
deno-init cli --template cliffy
Available templates: cliffy
tdd
Use to initialize a Deno Test-Driven Development project from a template.
deno-init tdd --template rhum
Roadmap
- Support more editor/IDE setups
- Add more project templates