JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 64
  • Score
    100M100P100Q96137F
  • License MIT

Scripts, templates, and project configuration for the common JavaScript and TypeScript developer

Package Exports

  • @cbnventures/nova/presets/eslint
  • @cbnventures/nova/presets/eslint/dx-code-style
  • @cbnventures/nova/presets/eslint/dx-ignore
  • @cbnventures/nova/presets/eslint/fw-docusaurus
  • @cbnventures/nova/presets/eslint/fw-expressjs
  • @cbnventures/nova/presets/eslint/fw-nextjs
  • @cbnventures/nova/presets/eslint/index
  • @cbnventures/nova/presets/eslint/lang-javascript
  • @cbnventures/nova/presets/eslint/lang-mdx
  • @cbnventures/nova/presets/eslint/lang-typescript
  • @cbnventures/nova/presets/eslint/runtime-browser
  • @cbnventures/nova/presets/eslint/runtime-cloudflare-workers
  • @cbnventures/nova/presets/eslint/runtime-edge
  • @cbnventures/nova/presets/eslint/runtime-node
  • @cbnventures/nova/presets/eslint/runtime-service-worker
  • @cbnventures/nova/presets/eslint/runtime-web-worker
  • @cbnventures/nova/presets/eslint/tool-vite
  • @cbnventures/nova/presets/tsconfig/dx-essentials.json
  • @cbnventures/nova/presets/tsconfig/dx-strict.json
  • @cbnventures/nova/presets/tsconfig/fw-docusaurus.json
  • @cbnventures/nova/presets/tsconfig/fw-expressjs.json
  • @cbnventures/nova/presets/tsconfig/fw-nextjs.json
  • @cbnventures/nova/presets/tsconfig/runtime-browser.json
  • @cbnventures/nova/presets/tsconfig/runtime-cloudflare-workers.json
  • @cbnventures/nova/presets/tsconfig/runtime-edge.json
  • @cbnventures/nova/presets/tsconfig/runtime-node.json
  • @cbnventures/nova/presets/tsconfig/runtime-service-worker.json
  • @cbnventures/nova/presets/tsconfig/runtime-web-worker.json
  • @cbnventures/nova/presets/tsconfig/tool-vite.json
  • @cbnventures/nova/rules/eslint
  • @cbnventures/nova/rules/eslint/conventions/no-default-export-declaration
  • @cbnventures/nova/rules/eslint/conventions/no-implicit-boolean
  • @cbnventures/nova/rules/eslint/conventions/require-explicit-return
  • @cbnventures/nova/rules/eslint/conventions/require-hash-private
  • @cbnventures/nova/rules/eslint/conventions/require-kebab-case-filename
  • @cbnventures/nova/rules/eslint/conventions/require-naming-convention
  • @cbnventures/nova/rules/eslint/conventions/require-undefined-init
  • @cbnventures/nova/rules/eslint/conventions/switch-case-blocks
  • @cbnventures/nova/rules/eslint/formatting/no-complex-arrow-concise
  • @cbnventures/nova/rules/eslint/formatting/no-multiline-strings
  • @cbnventures/nova/rules/eslint/formatting/no-raw-text-in-code
  • @cbnventures/nova/rules/eslint/formatting/no-ternary-in-template-literal
  • @cbnventures/nova/rules/eslint/formatting/require-import-order
  • @cbnventures/nova/rules/eslint/formatting/require-multiline-condition-groups
  • @cbnventures/nova/rules/eslint/formatting/require-multiline-conditions
  • @cbnventures/nova/rules/eslint/formatting/require-padding-lines
  • @cbnventures/nova/rules/eslint/formatting/require-ternary-parens
  • @cbnventures/nova/rules/eslint/index
  • @cbnventures/nova/rules/eslint/jsdoc/require-jsdoc-body
  • @cbnventures/nova/rules/eslint/jsdoc/require-jsdoc-hierarchy
  • @cbnventures/nova/rules/eslint/jsdoc/require-jsdoc-param-alignment
  • @cbnventures/nova/rules/eslint/jsdoc/require-jsdoc-param-name
  • @cbnventures/nova/rules/eslint/jsdoc/require-jsdoc-private
  • @cbnventures/nova/rules/eslint/jsdoc/require-jsdoc-since
  • @cbnventures/nova/rules/eslint/nova/no-logger-dev
  • @cbnventures/nova/rules/eslint/patterns/no-assign-then-return
  • @cbnventures/nova/rules/eslint/patterns/no-await-in-loop
  • @cbnventures/nova/rules/eslint/patterns/no-boolean-var-for-if
  • @cbnventures/nova/rules/eslint/patterns/no-bracket-assignment
  • @cbnventures/nova/rules/eslint/patterns/no-bracket-method-call
  • @cbnventures/nova/rules/eslint/patterns/no-template-curly-in-string
  • @cbnventures/nova/rules/eslint/patterns/no-use-before-define
  • @cbnventures/nova/rules/eslint/regex/no-regex-literal-flags
  • @cbnventures/nova/rules/eslint/regex/no-regex-literals
  • @cbnventures/nova/rules/eslint/safety/no-script-url
  • @cbnventures/nova/rules/eslint/syntax/no-destructuring
  • @cbnventures/nova/rules/eslint/syntax/no-numeric-literals
  • @cbnventures/nova/rules/eslint/syntax/no-optional-chaining
  • @cbnventures/nova/rules/eslint/syntax/no-rest-params
  • @cbnventures/nova/rules/eslint/typescript/no-catch-unknown-annotation
  • @cbnventures/nova/rules/eslint/typescript/no-explicit-any
  • @cbnventures/nova/rules/eslint/typescript/no-inline-type-annotation
  • @cbnventures/nova/rules/eslint/typescript/no-shared-type-import
  • @cbnventures/nova/rules/eslint/typescript/require-bracket-property-access
  • @cbnventures/nova/rules/eslint/typescript/require-type-naming
  • @cbnventures/nova/toolkit
  • @cbnventures/nova/toolkit/bootstrap
  • @cbnventures/nova/toolkit/cli-header
  • @cbnventures/nova/toolkit/index
  • @cbnventures/nova/toolkit/logger
  • @cbnventures/nova/toolkit/markdown-table
  • @cbnventures/nova/types/api/node-releases.d.ts
  • @cbnventures/nova/types/api/spdx-licenses.d.ts
  • @cbnventures/nova/types/cli/generate/github/funding.d.ts
  • @cbnventures/nova/types/cli/generate/github/issue-template.d.ts
  • @cbnventures/nova/types/cli/generate/github/workflows.d.ts
  • @cbnventures/nova/types/cli/generate/must-haves/agent-conventions.d.ts
  • @cbnventures/nova/types/cli/generate/must-haves/dotenv.d.ts
  • @cbnventures/nova/types/cli/generate/must-haves/editorconfig.d.ts
  • @cbnventures/nova/types/cli/generate/must-haves/gitignore.d.ts
  • @cbnventures/nova/types/cli/generate/must-haves/license.d.ts
  • @cbnventures/nova/types/cli/generate/must-haves/read-me.d.ts
  • @cbnventures/nova/types/cli/index.d.ts
  • @cbnventures/nova/types/cli/recipe/index.d.ts
  • @cbnventures/nova/types/cli/recipe/package-json/cleanup.d.ts
  • @cbnventures/nova/types/cli/recipe/package-json/normalize-artifacts.d.ts
  • @cbnventures/nova/types/cli/recipe/package-json/normalize-bundler.d.ts
  • @cbnventures/nova/types/cli/recipe/package-json/normalize-dependencies.d.ts
  • @cbnventures/nova/types/cli/recipe/package-json/normalize-modules.d.ts
  • @cbnventures/nova/types/cli/recipe/package-json/normalize-tooling.d.ts
  • @cbnventures/nova/types/cli/recipe/package-json/sync-environment.d.ts
  • @cbnventures/nova/types/cli/recipe/package-json/sync-identity.d.ts
  • @cbnventures/nova/types/cli/recipe/package-json/sync-ownership.d.ts
  • @cbnventures/nova/types/cli/scaffold/app/expressjs.d.ts
  • @cbnventures/nova/types/cli/scaffold/app/nextjs.d.ts
  • @cbnventures/nova/types/cli/scaffold/app/vite.d.ts
  • @cbnventures/nova/types/cli/scaffold/app/workers.d.ts
  • @cbnventures/nova/types/cli/scaffold/docs/docusaurus.d.ts
  • @cbnventures/nova/types/cli/scaffold/starter/base.d.ts
  • @cbnventures/nova/types/cli/utility/changelog.d.ts
  • @cbnventures/nova/types/cli/utility/initialize.d.ts
  • @cbnventures/nova/types/cli/utility/run-recipes.d.ts
  • @cbnventures/nova/types/cli/utility/run-scripts.d.ts
  • @cbnventures/nova/types/cli/utility/transpile.d.ts
  • @cbnventures/nova/types/cli/utility/type-check.d.ts
  • @cbnventures/nova/types/cli/utility/version.d.ts
  • @cbnventures/nova/types/fetch-response.d.ts
  • @cbnventures/nova/types/lib/constants.d.ts
  • @cbnventures/nova/types/lib/item.d.ts
  • @cbnventures/nova/types/lib/nova-config.d.ts
  • @cbnventures/nova/types/lib/scaffold.d.ts
  • @cbnventures/nova/types/lib/utility.d.ts
  • @cbnventures/nova/types/lib/workflow-templates.d.ts
  • @cbnventures/nova/types/presets/eslint/dx-code-style.d.ts
  • @cbnventures/nova/types/presets/eslint/dx-ignore.d.ts
  • @cbnventures/nova/types/presets/eslint/fw-docusaurus.d.ts
  • @cbnventures/nova/types/presets/eslint/fw-expressjs.d.ts
  • @cbnventures/nova/types/presets/eslint/fw-nextjs.d.ts
  • @cbnventures/nova/types/presets/eslint/lang-javascript.d.ts
  • @cbnventures/nova/types/presets/eslint/lang-mdx.d.ts
  • @cbnventures/nova/types/presets/eslint/lang-typescript.d.ts
  • @cbnventures/nova/types/presets/eslint/runtime-browser.d.ts
  • @cbnventures/nova/types/presets/eslint/runtime-cloudflare-workers.d.ts
  • @cbnventures/nova/types/presets/eslint/runtime-edge.d.ts
  • @cbnventures/nova/types/presets/eslint/runtime-node.d.ts
  • @cbnventures/nova/types/presets/eslint/runtime-service-worker.d.ts
  • @cbnventures/nova/types/presets/eslint/runtime-web-worker.d.ts
  • @cbnventures/nova/types/presets/eslint/tool-vite.d.ts
  • @cbnventures/nova/types/rules/eslint/conventions/no-default-export-declaration.d.ts
  • @cbnventures/nova/types/rules/eslint/conventions/no-implicit-boolean.d.ts
  • @cbnventures/nova/types/rules/eslint/conventions/require-explicit-return.d.ts
  • @cbnventures/nova/types/rules/eslint/conventions/require-hash-private.d.ts
  • @cbnventures/nova/types/rules/eslint/conventions/require-kebab-case-filename.d.ts
  • @cbnventures/nova/types/rules/eslint/conventions/require-naming-convention.d.ts
  • @cbnventures/nova/types/rules/eslint/conventions/require-undefined-init.d.ts
  • @cbnventures/nova/types/rules/eslint/conventions/switch-case-blocks.d.ts
  • @cbnventures/nova/types/rules/eslint/formatting/no-complex-arrow-concise.d.ts
  • @cbnventures/nova/types/rules/eslint/formatting/no-multiline-strings.d.ts
  • @cbnventures/nova/types/rules/eslint/formatting/no-raw-text-in-code.d.ts
  • @cbnventures/nova/types/rules/eslint/formatting/no-ternary-in-template-literal.d.ts
  • @cbnventures/nova/types/rules/eslint/formatting/require-import-order.d.ts
  • @cbnventures/nova/types/rules/eslint/formatting/require-multiline-condition-groups.d.ts
  • @cbnventures/nova/types/rules/eslint/formatting/require-multiline-conditions.d.ts
  • @cbnventures/nova/types/rules/eslint/formatting/require-padding-lines.d.ts
  • @cbnventures/nova/types/rules/eslint/formatting/require-ternary-parens.d.ts
  • @cbnventures/nova/types/rules/eslint/jsdoc/require-jsdoc-body.d.ts
  • @cbnventures/nova/types/rules/eslint/jsdoc/require-jsdoc-hierarchy.d.ts
  • @cbnventures/nova/types/rules/eslint/jsdoc/require-jsdoc-param-alignment.d.ts
  • @cbnventures/nova/types/rules/eslint/jsdoc/require-jsdoc-param-name.d.ts
  • @cbnventures/nova/types/rules/eslint/jsdoc/require-jsdoc-private.d.ts
  • @cbnventures/nova/types/rules/eslint/jsdoc/require-jsdoc-since.d.ts
  • @cbnventures/nova/types/rules/eslint/nova/no-logger-dev.d.ts
  • @cbnventures/nova/types/rules/eslint/patterns/no-assign-then-return.d.ts
  • @cbnventures/nova/types/rules/eslint/patterns/no-await-in-loop.d.ts
  • @cbnventures/nova/types/rules/eslint/patterns/no-boolean-var-for-if.d.ts
  • @cbnventures/nova/types/rules/eslint/patterns/no-bracket-assignment.d.ts
  • @cbnventures/nova/types/rules/eslint/patterns/no-bracket-method-call.d.ts
  • @cbnventures/nova/types/rules/eslint/patterns/no-template-curly-in-string.d.ts
  • @cbnventures/nova/types/rules/eslint/patterns/no-use-before-define.d.ts
  • @cbnventures/nova/types/rules/eslint/regex/no-regex-literal-flags.d.ts
  • @cbnventures/nova/types/rules/eslint/regex/no-regex-literals.d.ts
  • @cbnventures/nova/types/rules/eslint/safety/no-script-url.d.ts
  • @cbnventures/nova/types/rules/eslint/syntax/no-destructuring.d.ts
  • @cbnventures/nova/types/rules/eslint/syntax/no-numeric-literals.d.ts
  • @cbnventures/nova/types/rules/eslint/syntax/no-optional-chaining.d.ts
  • @cbnventures/nova/types/rules/eslint/syntax/no-rest-params.d.ts
  • @cbnventures/nova/types/rules/eslint/typescript/no-catch-unknown-annotation.d.ts
  • @cbnventures/nova/types/rules/eslint/typescript/no-explicit-any.d.ts
  • @cbnventures/nova/types/rules/eslint/typescript/no-inline-type-annotation.d.ts
  • @cbnventures/nova/types/rules/eslint/typescript/no-shared-type-import.d.ts
  • @cbnventures/nova/types/rules/eslint/typescript/require-bracket-property-access.d.ts
  • @cbnventures/nova/types/rules/eslint/typescript/require-type-naming.d.ts
  • @cbnventures/nova/types/shared.d.ts
  • @cbnventures/nova/types/tests/api/node-releases.test.d.ts
  • @cbnventures/nova/types/tests/api/spdx-licenses.test.d.ts
  • @cbnventures/nova/types/tests/cli/generate/github/funding.test.d.ts
  • @cbnventures/nova/types/tests/cli/generate/github/issue-template.test.d.ts
  • @cbnventures/nova/types/tests/cli/generate/github/workflows-helpers.test.d.ts
  • @cbnventures/nova/types/tests/cli/generate/github/workflows.test.d.ts
  • @cbnventures/nova/types/tests/cli/generate/must-haves/agent-conventions.test.d.ts
  • @cbnventures/nova/types/tests/cli/generate/must-haves/dotenv.test.d.ts
  • @cbnventures/nova/types/tests/cli/generate/must-haves/editorconfig.test.d.ts
  • @cbnventures/nova/types/tests/cli/generate/must-haves/gitignore.test.d.ts
  • @cbnventures/nova/types/tests/cli/generate/must-haves/license.test.d.ts
  • @cbnventures/nova/types/tests/cli/generate/must-haves/read-me.test.d.ts
  • @cbnventures/nova/types/tests/cli/recipe/package-json/cleanup.test.d.ts
  • @cbnventures/nova/types/tests/cli/recipe/package-json/normalize-artifacts.test.d.ts
  • @cbnventures/nova/types/tests/cli/recipe/package-json/normalize-bundler.test.d.ts
  • @cbnventures/nova/types/tests/cli/recipe/package-json/normalize-dependencies.test.d.ts
  • @cbnventures/nova/types/tests/cli/recipe/package-json/normalize-modules.test.d.ts
  • @cbnventures/nova/types/tests/cli/recipe/package-json/normalize-tooling.test.d.ts
  • @cbnventures/nova/types/tests/cli/recipe/package-json/sync-environment.test.d.ts
  • @cbnventures/nova/types/tests/cli/recipe/package-json/sync-identity.test.d.ts
  • @cbnventures/nova/types/tests/cli/recipe/package-json/sync-ownership.test.d.ts
  • @cbnventures/nova/types/tests/cli/scaffold/app/expressjs.test.d.ts
  • @cbnventures/nova/types/tests/cli/scaffold/app/nextjs.test.d.ts
  • @cbnventures/nova/types/tests/cli/scaffold/app/vite.test.d.ts
  • @cbnventures/nova/types/tests/cli/scaffold/app/workers.test.d.ts
  • @cbnventures/nova/types/tests/cli/scaffold/docs/docusaurus.test.d.ts
  • @cbnventures/nova/types/tests/cli/scaffold/starter/base.test.d.ts
  • @cbnventures/nova/types/tests/cli/utility/changelog.test.d.ts
  • @cbnventures/nova/types/tests/cli/utility/initialize.test.d.ts
  • @cbnventures/nova/types/tests/cli/utility/run-recipes.test.d.ts
  • @cbnventures/nova/types/tests/cli/utility/run-scripts.test.d.ts
  • @cbnventures/nova/types/tests/cli/utility/transpile.test.d.ts
  • @cbnventures/nova/types/tests/cli/utility/type-check.test.d.ts
  • @cbnventures/nova/types/tests/cli/utility/version.test.d.ts
  • @cbnventures/nova/types/tests/lib/item.test.d.ts
  • @cbnventures/nova/types/tests/lib/nova-config.test.d.ts
  • @cbnventures/nova/types/tests/lib/regex.test.d.ts
  • @cbnventures/nova/types/tests/lib/scaffold.test.d.ts
  • @cbnventures/nova/types/tests/lib/schema.test.d.ts
  • @cbnventures/nova/types/tests/lib/utility.test.d.ts
  • @cbnventures/nova/types/tests/lib/workflow-templates.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/conventions/no-default-export-declaration.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/conventions/no-implicit-boolean.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/conventions/require-explicit-return.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/conventions/require-hash-private.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/conventions/require-kebab-case-filename.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/conventions/require-naming-convention.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/conventions/require-undefined-init.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/conventions/switch-case-blocks.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/formatting/no-complex-arrow-concise.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/formatting/no-multiline-strings.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/formatting/no-raw-text-in-code.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/formatting/no-ternary-in-template-literal.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/formatting/require-import-order.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/formatting/require-multiline-condition-groups.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/formatting/require-multiline-conditions.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/formatting/require-padding-lines.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/formatting/require-ternary-parens.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/jsdoc/require-jsdoc-body.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/jsdoc/require-jsdoc-hierarchy.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/jsdoc/require-jsdoc-param-alignment.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/jsdoc/require-jsdoc-param-name.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/jsdoc/require-jsdoc-private.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/jsdoc/require-jsdoc-since.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/nova/no-logger-dev.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/patterns/no-assign-then-return.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/patterns/no-await-in-loop.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/patterns/no-boolean-var-for-if.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/patterns/no-bracket-assignment.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/patterns/no-bracket-method-call.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/patterns/no-template-curly-in-string.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/patterns/no-use-before-define.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/regex/no-regex-literal-flags.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/regex/no-regex-literals.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/safety/no-script-url.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/syntax/no-destructuring.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/syntax/no-numeric-literals.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/syntax/no-optional-chaining.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/syntax/no-rest-params.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/typescript/no-catch-unknown-annotation.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/typescript/no-explicit-any.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/typescript/no-inline-type-annotation.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/typescript/no-shared-type-import.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/typescript/require-bracket-property-access.test.d.ts
  • @cbnventures/nova/types/tests/rules/eslint/typescript/require-type-naming.test.d.ts
  • @cbnventures/nova/types/tests/toolkit/bootstrap.test.d.ts
  • @cbnventures/nova/types/tests/toolkit/cli-header.test.d.ts
  • @cbnventures/nova/types/tests/toolkit/logger.test.d.ts
  • @cbnventures/nova/types/tests/toolkit/markdown-table.test.d.ts
  • @cbnventures/nova/types/tests/type-declarations.test.d.ts
  • @cbnventures/nova/types/toolkit/bootstrap.d.ts
  • @cbnventures/nova/types/toolkit/cli-header.d.ts
  • @cbnventures/nova/types/toolkit/logger.d.ts
  • @cbnventures/nova/types/toolkit/markdown-table.d.ts

Readme

Introduction

Nova is a JavaScript and TypeScript monorepo suite, offering strict presets and guided tooling to help you build with confidence, predictability, and minimal setup. It delivers strong defaults, robust linting and typing, and scaffolded project generators — all wrapped in guardrails that keep your workflow safe without sacrificing flexibility.

Documentation

To get started, visit https://nova.cbnventures.io/ to view the full documentation.

Credits and Appreciation

If you find value in the ongoing development of this project and wish to express your appreciation, you have the option to:

A special thanks to our contributors and supporters: