deno publish
Command line usage
deno publish [OPTIONS]
Publish the current working directory's package or workspace to JSR
Publishing options Jump to heading
--allow-dirty
Jump to heading
Allow publishing if the repository has uncommitted changed.
--allow-slow-types
Jump to heading
Allow publishing with slow types.
--dry-run
Jump to heading
Prepare the package for publishing performing all checks and validations without uploading.
--no-provenance
Jump to heading
Disable provenance attestation. Enabled by default on Github actions, publicly links the package to where it was built and published from.
--set-version
Jump to heading
Set version for a package to be published. <p(245)>This flag can be used while publishing individual packages and cannot be used in a workspace.</>.
--token
Jump to heading
The API token to use when publishing. If unset, interactive authentication is be used.
Options Jump to heading
--config
Jump to heading
Short flag: -c
Configure different aspects of deno including TypeScript, linting, and code formatting
Typically the configuration file will be called deno.json
or deno.jsonc
and
automatically detected; in that case this flag is not necessary.
--no-config
Jump to heading
Disable automatic loading of the configuration file.
Type checking options Jump to heading
--check
Jump to heading
Set type-checking behavior. This subcommand type-checks local modules by default, so adding --check
is redundant
If the value of "all" is supplied, remote modules will be included.
Alternatively, the 'deno check' subcommand can be used.
--no-check
Jump to heading
Skip type-checking. If the value of "remote" is supplied, diagnostic errors from remote modules will be ignored.
Package Requirements Jump to heading
Your package must have a name
and version
and an exports
field in its
deno.json
or jsr.json
file.
- The
name
field must be unique and follow the@<scope_name>/<package_name>
convention. - The
version
field must be a valid semver version. - The
exports
field must point to the main entry point of the package.
Example:
{
"name": "@scope_name/package_name",
"version": "1.0.0",
"exports": "./main.ts"
}
Before you publish your package, you must create it in the registry by visiting JSR - Publish a package.
Examples Jump to heading
Publish your current workspace
deno publish
Publish your current workspace with a specific token, bypassing interactive authentication
deno publish --token c00921b1-0d4f-4d18-b8c8-ac98227f9275
Publish and check for errors in remote modules
deno publish --check=all
Perform a dry run to simulate publishing.
deno publish --dry-run
Publish using settings from a specific configuration file
deno publish --config custom-config.json