deno.jsonc instead of a package.json. Work in a hybrid project and deno.jsonc sits beside package.json for Deno-native settings. Either way, extension dev and extension build behave the same.
Create a project with Deno
Primary mode: deno.jsonc is the project manifest
When you scaffold under the Deno runtime,deno.jsonc becomes the project’s only manifest and package.json is removed.
- Template dependencies move into
importsasnpm:specifiers, anddeno installresolves them. - The
extensionengine itself is declared there too, asnpm:extension@<version>. nodeModulesDiris set to"auto", sonpm:dependencies materialize in a realnode_modulesdirectory. The bundler resolves project dependencies from it at dev and build time.deno task <name>also finds binaries innode_modules/.bin, so the generated tasks run the locally installed Extension.js CLI.
deno.json over deno.jsonc, so the merge targets the file that Deno will read.
Companion mode: deno.jsonc beside package.json
Monorepo templates, and projects that already have apackage.json, keep it. Dependencies stay declared in package.json, and deno install resolves them from there. The companion deno.jsonc carries only Deno-native settings and the tasks that run the CLI.
How the toolchain detects Deno
Detection works on files, not on how you invoked the CLI:- Extension.js reads
deno.jsoncordeno.jsonwhen it scans project dependencies. Framework, CSS, and TypeScript detection all see packages thatimportsdeclares throughnpm:specifiers. - When both manifests declare the same package, the
package.jsonentry wins. - A project counts as Deno-managed when it has a
deno.lock, or a Deno config with nopackage.jsonbeside it. An npm-family lockfile wins for hybrids, and Deno is claimed only when thedenobinary is on your PATH.
TypeScript in Deno projects
TypeScript detection follows the same rules as everywhere else. See TypeScript: SWC compiles the sources, and thetypescript package is only needed for tsc --noEmit.
Next steps
- Learn how Extension.js handles Node APIs.
- Learn how to manage Extension configuration.

