{ "author": { "name": "Court Schuett", "roles": [ "author" ], "url": "https://subaud.io" }, "dependencies": { "projen": "^0.72.4" }, "dependencyClosure": { "projen": { "submodules": { "projen.awscdk": {}, "projen.build": {}, "projen.cdk": {}, "projen.cdk8s": {}, "projen.cdktf": {}, "projen.circleci": {}, "projen.github": {}, "projen.github.workflows": {}, "projen.gitlab": {}, "projen.java": {}, "projen.javascript": {}, "projen.python": {}, "projen.release": {}, "projen.typescript": {}, "projen.vscode": {}, "projen.web": {} }, "targets": { "go": { "moduleName": "github.com/projen/projen-go" }, "java": { "maven": { "artifactId": "projen", "groupId": "io.github.cdklabs" }, "package": "io.github.cdklabs.projen" }, "js": { "npm": "projen" }, "python": { "distName": "projen", "module": "projen" } } } }, "description": "Opinionated projen project types.", "docs": { "stability": "stable" }, "homepage": "https://github.com/schuettc/projen-projects", "jsiiVersion": "5.1.10 (build 041401a)", "license": "MIT", "metadata": { "jsii": { "pacmak": { "hasDefaultInterfaces": true } }, "tscRootDir": "src" }, "name": "schuettc", "readme": { "markdown": "## Usage\n\n```console\nprojen new --from schuettc construct\n```\n\n```console\nprojen new --from schuettc projen\n```\n\n```console\nprojen new --from schuettc ts\n```\n" }, "repository": { "type": "git", "url": "git@github.com:schuettc/projen-projects.git" }, "schema": "jsii/0.10.0", "submodules": { "schuettc.utils": { "locationInModule": { "filename": "src/index.ts", "line": 7 }, "symbolId": "src/utils:" } }, "targets": { "js": { "npm": "schuettc" } }, "types": { "schuettc.ConstructProject": { "assembly": "schuettc", "base": "projen.awscdk.AwsCdkConstructLibrary", "docs": { "custom": { "pjid": "construct" }, "stability": "stable" }, "fqn": "schuettc.ConstructProject", "initializer": { "docs": { "stability": "experimental" }, "locationInModule": { "filename": "src/awscdk/awscdk-construct.ts", "line": 71 }, "parameters": [ { "name": "options", "type": { "fqn": "projen.awscdk.AwsCdkConstructLibraryOptions" } } ] }, "kind": "class", "locationInModule": { "filename": "src/construct-project.ts", "line": 6 }, "name": "ConstructProject", "symbolId": "src/construct-project:ConstructProject" }, "schuettc.ConstructProjectOptions": { "assembly": "schuettc", "datatype": true, "docs": { "stability": "stable", "summary": "ConstructProjectOptions." }, "fqn": "schuettc.ConstructProjectOptions", "kind": "interface", "locationInModule": { "filename": "src/construct-project-options.ts", "line": 7 }, "name": "ConstructProjectOptions", "properties": [ { "abstract": true, "docs": { "default": "$GIT_USER_NAME", "stability": "stable", "summary": "The name of the library author." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 175 }, "name": "author", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "$GIT_USER_EMAIL", "stability": "stable", "summary": "Email or URL of the library author." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 169 }, "name": "authorAddress", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "\"2.1.0\"", "stability": "stable", "summary": "Minimum version of the AWS CDK to depend on." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 65 }, "name": "cdkVersion", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "\"main\"", "stability": "stable", "summary": "The name of the main release branch." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 498 }, "name": "defaultReleaseBranch", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "custom": { "featured": "true" }, "default": "$BASEDIR", "stability": "stable", "summary": "This is the name of your project." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 1037 }, "name": "name", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "$GIT_REMOTE", "stability": "stable", "summary": "Git repository URL." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 163 }, "name": "repositoryUrl", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "true", "remarks": "This is normally only allowed for libraries. For apps, there's no meaning\nfor specifying these.", "stability": "stable", "summary": "Allow the project to include `peerDependencies` and `bundledDependencies`." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 875 }, "name": "allowLibraryDependencies", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "\"dist\"", "stability": "stable", "summary": "A directory which will contain build artifacts." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 492 }, "name": "artifactsDirectory", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Author's e-mail." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 867 }, "name": "authorEmail", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Author's name." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 862 }, "name": "authorName", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Is the author an organization." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 857 }, "name": "authorOrganization", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Author's URL / Website." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 852 }, "name": "authorUrl", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "- auto approve is disabled", "stability": "stable", "summary": "Enable and configure the 'auto approve' workflow." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 961 }, "name": "autoApproveOptions", "optional": true, "type": { "fqn": "projen.github.AutoApproveOptions" } }, { "abstract": true, "docs": { "default": "- true", "remarks": "Throw if set to true but `autoApproveOptions` are not defined.", "stability": "stable", "summary": "Automatically approve deps upgrade PRs, allowing them to be merged by mergify (if configued)." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 486 }, "name": "autoApproveUpgrades", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "true", "stability": "stable", "summary": "Automatically add all executables under the `bin` directory to your `package.json` file under the `bin` section." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 847 }, "name": "autoDetectBin", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "true", "remarks": "Has no effect if `github.mergify`\nis set to false.", "stability": "stable", "summary": "Enable automatic merging on GitHub." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 955 }, "name": "autoMerge", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- see defaults in `AutoMergeOptions`", "remarks": "Has no effect if\n`github.mergify` or `autoMerge` is set to false.", "stability": "stable", "summary": "Configure options for automatic merging on GitHub." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 947 }, "name": "autoMergeOptions", "optional": true, "type": { "fqn": "projen.github.AutoMergeOptions" } }, { "abstract": true, "docs": { "remarks": "You can use this option to add/customize how binaries are represented in\nyour `package.json`, but unless `autoDetectBin` is `false`, every\nexecutable file under `bin` will automatically be added to this section.", "stability": "stable", "summary": "Binary programs vended with your module." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 841 }, "name": "bin", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "map" } } }, { "abstract": true, "docs": { "stability": "stable", "summary": "The email address to which issues should be reported." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 833 }, "name": "bugsEmail", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "The url to your project's issue tracker." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 828 }, "name": "bugsUrl", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "- true if not a subproject", "stability": "stable", "summary": "Define a GitHub workflow for building PRs." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 479 }, "name": "buildWorkflow", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "\"{ pullRequest: {}, workflowDispatch: {} }\"", "stability": "stable", "summary": "Build workflow triggers." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 473 }, "name": "buildWorkflowTriggers", "optional": true, "type": { "fqn": "projen.github.workflows.Triggers" } }, { "abstract": true, "docs": { "remarks": "These modules will be\nadded both to the `dependencies` section and `bundledDependencies` section of\nyour `package.json`.\n\nThe recommendation is to only specify the module name here (e.g.\n`express`). This will behave similar to `yarn add` or `npm install` in the\nsense that it will add the module as a dependency to your `package.json`\nfile with the latest version (`^`). You can specify semver requirements in\nthe same syntax passed to `npm i` or `yarn add` (e.g. `express@^2`) and\nthis will be what you `package.json` will eventually include.", "stability": "stable", "summary": "List of dependencies to bundle into this module." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 823 }, "name": "bundledDeps", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Options for `Bundler`." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 467 }, "name": "bundlerOptions", "optional": true, "type": { "fqn": "projen.javascript.BundlerOptions" } }, { "abstract": true, "docs": { "default": "- new version will be announced", "remarks": "https://awscdk.io/packages/[@SCOPE/]PACKAGE@VERSION\n\nThe catalog will also post a tweet to https://twitter.com/awscdkio with the\npackage name, description and the above link. You can disable these tweets\nthrough `{ announce: false }`.\n\nYou can also add a Twitter handle through `{ twitter: 'xx' }` which will be\nmentioned in the tweet.", "stability": "stable", "summary": "Libraries will be picked up by the construct catalog when they are published to npm as jsii modules and will be published under:." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 79 }, "name": "catalog", "optional": true, "type": { "fqn": "projen.cdk.Catalog" } }, { "abstract": true, "docs": { "default": "- will be included by default for AWS CDK >= 1.111.0 < 2.0.0", "remarks": "Only needed for CDK 1.x. If using CDK 2.x then\nassertions is already included in 'aws-cdk-lib'", "stability": "stable", "summary": "Install the assertions library?" }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 59 }, "name": "cdkAssertions", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "remarks": "You can use this to prevent mixed versions for your CDK dependencies and to prevent auto-updates.\nIf you use experimental features this will let you define the moment you include breaking changes.", "stability": "stable", "summary": "Use pinned version instead of caret version for CDK." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 51 }, "name": "cdkVersionPinning", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- true, but false for subprojects", "stability": "stable", "summary": "Add a `clobber` task which resets the repo to origin." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 939 }, "name": "clobber", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- undefined", "remarks": "This is required if publishing packages to, or installing scoped packages from AWS CodeArtifact", "stability": "stable", "summary": "Options for npm packages using AWS CodeArtifact." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 808 }, "name": "codeArtifactOptions", "optional": true, "type": { "fqn": "projen.javascript.CodeArtifactOptions" } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v3 A secret is required for private repos. Configured with `@codeCovTokenSecret`." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 462 }, "name": "codeCov", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- if this option is not specified, only public repositories are supported", "stability": "stable", "summary": "Define the secret name for a specified https://codecov.io/ token A secret is required to send coverage for private repositories." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 456 }, "name": "codeCovTokenSecret", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "true", "stability": "stable", "summary": "Whether to commit the managed files by default." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 1030 }, "name": "commitGenerated", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "false", "remarks": "- You can manually run compatibility tests using `yarn compat` if this feature is disabled.\n- You can ignore compatibility failures by adding lines to a \".compatignore\" file.", "stability": "stable", "summary": "Automatically run API compatibility test against the latest version published to npm after compilation." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 157 }, "name": "compat", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "\".compatignore\"", "stability": "stable", "summary": "Name of the ignore file for API compatibility tests." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 149 }, "name": "compatIgnore", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Emit a compressed version of the assembly." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 143 }, "name": "compressAssembly", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- for CDK 1.x the default is \"3.2.27\", for CDK 2.x the default is\n\"10.0.5\".", "stability": "stable", "summary": "Minimum version of the `constructs` library to depend on." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 44 }, "name": "constructsVersion", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "- defaults to the value of authorName or \"\" if `authorName` is undefined.", "stability": "stable", "summary": "License copyright owner." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 450 }, "name": "copyrightOwner", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "- current year", "stability": "stable", "summary": "The copyright years to put in the LICENSE file." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 444 }, "name": "copyrightPeriod", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "false", "remarks": "Cannot be used in conjunction with `depsUpgrade`.", "stability": "stable", "summary": "Use dependabot to handle dependency upgrades." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 438 }, "name": "dependabot", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- default options", "stability": "stable", "summary": "Options for dependabot." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 431 }, "name": "dependabotOptions", "optional": true, "type": { "fqn": "projen.github.DependabotOptions" } }, { "abstract": true, "docs": { "custom": { "featured": "true" }, "default": "[]", "remarks": "The recommendation is to only specify the module name here (e.g.\n`express`). This will behave similar to `yarn add` or `npm install` in the\nsense that it will add the module as a dependency to your `package.json`\nfile with the latest version (`^`). You can specify semver requirements in\nthe same syntax passed to `npm i` or `yarn add` (e.g. `express@^2`) and\nthis will be what you `package.json` will eventually include.", "stability": "stable", "summary": "Runtime dependencies of this module." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 801 }, "name": "deps", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } }, { "abstract": true, "docs": { "default": "true", "remarks": "Cannot be used in conjunction with `dependabot`.", "stability": "stable", "summary": "Use github workflows to handle dependency upgrades." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 425 }, "name": "depsUpgrade", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- default options", "stability": "stable", "summary": "Options for `UpgradeDependencies`." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 418 }, "name": "depsUpgradeOptions", "optional": true, "type": { "fqn": "projen.javascript.UpgradeDependenciesOptions" } }, { "abstract": true, "docs": { "custom": { "featured": "true" }, "remarks": "It can be used when searching for packages in a package manager as well.\nSee https://classic.yarnpkg.com/en/docs/package-json/#toc-description", "stability": "stable", "summary": "The description is just a string that helps people understand the purpose of the package." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 788 }, "name": "description", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Add a VSCode development environment (used for GitHub Codespaces)." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 933 }, "name": "devContainer", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "custom": { "featured": "true" }, "default": "[]", "remarks": "These dependencies will only be\navailable in your build environment but will not be fetched when this\nmodule is consumed.\n\nThe recommendation is to only specify the module name here (e.g.\n`express`). This will behave similar to `yarn add` or `npm install` in the\nsense that it will add the module as a dependency to your `package.json`\nfile with the latest version (`^`). You can specify semver requirements in\nthe same syntax passed to `npm i` or `yarn add` (e.g. `express@^2`) and\nthis will be what you `package.json` will eventually include.", "stability": "stable", "summary": "Build dependencies for this module." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 780 }, "name": "devDeps", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Do not generate a `tsconfig.json` file (used by jsii projects since tsconfig.json is generated by the jsii compiler)." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 283 }, "name": "disableTsconfig", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Do not generate a `tsconfig.dev.json` file." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 277 }, "name": "disableTsconfigDev", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Docgen by Typedoc." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 271 }, "name": "docgen", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "\"API.md\"", "stability": "stable", "summary": "File path for generated docs." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 137 }, "name": "docgenFilePath", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "\"docs\"", "stability": "stable", "summary": "Docs directory." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 265 }, "name": "docsDirectory", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "true", "stability": "stable", "summary": "Automatically adds an `cloudfront.experimental.EdgeFunction` for each `.edge-lambda.ts` handler in your source tree. If this is disabled, you can manually add an `awscdk.AutoDiscover` component to your project." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 37 }, "name": "edgeLambdaAutoDiscover", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "\"lib/index.js\"", "stability": "stable", "summary": "Module entrypoint (`main` in `package.json`). Set to an empty string to not include `main` in your package.json." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 763 }, "name": "entrypoint", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "- .d.ts file derived from the project's entrypoint (usually lib/index.d.ts)", "stability": "stable", "summary": "The .d.ts file that includes the type declarations for this module." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 259 }, "name": "entrypointTypes", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "true", "stability": "stable", "summary": "Setup eslint." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 253 }, "name": "eslint", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- opinionated default options", "stability": "stable", "summary": "Eslint options." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 247 }, "name": "eslintOptions", "optional": true, "type": { "fqn": "projen.javascript.EslintOptions" } }, { "abstract": true, "docs": { "remarks": "By default, jsii will include all *.ts files (except .d.ts files) in the TypeScript compiler input.\nThis can be problematic for example when the package's build or test procedure generates .ts files\nthat cannot be compiled with jsii's compiler settings.", "stability": "stable", "summary": "Accepts a list of glob patterns. Files matching any of those patterns will be excluded from the TypeScript compiler input." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 131 }, "name": "excludeTypescript", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } }, { "abstract": true, "docs": { "default": "true", "remarks": "Enabled by default for root projects. Disabled for non-root projects.", "stability": "stable", "summary": "Enable GitHub integration." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 927 }, "name": "github", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- see GitHubOptions", "stability": "stable", "summary": "Options for GitHub integration." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 920 }, "name": "githubOptions", "optional": true, "type": { "fqn": "projen.github.GitHubOptions" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Additional entries to .gitignore." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 412 }, "name": "gitignore", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Configuration options for .gitignore file." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 1024 }, "name": "gitIgnoreOptions", "optional": true, "type": { "fqn": "projen.IgnoreFileOptions" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Configuration options for git." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 1019 }, "name": "gitOptions", "optional": true, "type": { "fqn": "projen.GitOptions" } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Add a Gitpod development environment." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 914 }, "name": "gitpod", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Package's Homepage / Website." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 756 }, "name": "homepage", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "true", "stability": "stable", "summary": "Automatically discovers and creates integration tests for each `.integ.ts` file in under your test directory." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 31 }, "name": "integrationTestAutoDiscover", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "true", "stability": "stable", "summary": "Setup jest unit tests." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 407 }, "name": "jest", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- default options", "stability": "stable", "summary": "Jest options." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 401 }, "name": "jestOptions", "optional": true, "type": { "fqn": "projen.javascript.JestOptions" } }, { "abstract": true, "docs": { "default": "\"latest\"", "stability": "stable", "summary": "Version requirement of `publib` which is used to publish modules to npm." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 634 }, "name": "jsiiReleaseVersion", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "custom": { "pjnew": "\"~5.0.0\"" }, "default": "\"1.x\"", "remarks": "Set to \"*\" if you want to manually manage the version of jsii in your\nproject by managing updates to `package.json` on your own.\n\nNOTE: The jsii compiler releases since 5.0.0 are not semantically versioned\nand should remain on the same minor, so we recommend using a `~` dependency\n(e.g. `~5.0.0`).", "stability": "stable", "summary": "Version of the jsii compiler to use." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 121 }, "name": "jsiiVersion", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Keywords to include in `package.json`." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 751 }, "name": "keywords", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } }, { "abstract": true, "docs": { "default": "true", "stability": "stable", "summary": "Automatically adds an `aws_lambda.Function` for each `.lambda.ts` handler in your source tree. If this is disabled, you either need to explicitly call `aws_lambda.Function.autoDiscover()` or define a `new aws_lambda.Function()` for each handler." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 25 }, "name": "lambdaAutoDiscover", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "true", "stability": "stable", "summary": "Automatically adds an `awscdk.LambdaExtension` for each `.lambda-extension.ts` entrypoint in your source tree. If this is disabled, you can manually add an `awscdk.AutoDiscover` component to your project." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 19 }, "name": "lambdaExtensionAutoDiscover", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- default options", "stability": "stable", "summary": "Common options for all AWS Lambda functions." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 13 }, "name": "lambdaOptions", "optional": true, "type": { "fqn": "projen.awscdk.LambdaFunctionCommonOptions" } }, { "abstract": true, "docs": { "default": "\"lib\"", "stability": "stable", "summary": "Typescript artifacts output directory." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 241 }, "name": "libdir", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "\"Apache-2.0\"", "remarks": "See https://github.com/projen/projen/tree/main/license-text for a list of supported licenses.\nUse the `licensed` option if you want to no license to be specified.", "stability": "stable", "summary": "License's SPDX identifier." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 746 }, "name": "license", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "true", "stability": "stable", "summary": "Indicates if a license should be added." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 738 }, "name": "licensed", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "{}", "stability": "stable", "summary": "Configure logging options such as verbosity." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 1014 }, "name": "logging", "optional": true, "type": { "fqn": "projen.LoggerOptions" } }, { "abstract": true, "docs": { "default": "- Major version is not enforced.", "remarks": "If this is specified, we bump the latest version of this major version line.\nIf not specified, we bump the global latest version.", "stability": "stable", "summary": "Major version to release from the default branch." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 628 }, "name": "majorVersion", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "default": "- no max", "stability": "stable", "summary": "Minimum node.js version to require via `engines` (inclusive)." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 732 }, "name": "maxNodeVersion", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "- No minimum version is being enforced", "remarks": "This can be useful to set to 1, as breaking changes before the 1.x major\nrelease are not incrementing the major version number.\n\nCan not be set together with `majorVersion`.", "stability": "stable", "summary": "Minimal Major version to release." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 620 }, "name": "minMajorVersion", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "default": "- no \"engines\" specified", "stability": "stable", "summary": "Minimum Node.js version to require via package.json `engines` (inclusive)." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 726 }, "name": "minNodeVersion", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "true", "remarks": "This means\nthat any files synthesized by projen or e.g. test snapshots will always be up-to-date\nbefore a PR is merged.\n\nImplies that PR builds do not have anti-tamper checks.", "stability": "stable", "summary": "Automatically update files modified during builds to pull-request branches." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 395 }, "name": "mutableBuild", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- for scoped packages (e.g. `foo@bar`), the default is\n`NpmAccess.RESTRICTED`, for non-scoped packages, the default is\n`NpmAccess.PUBLIC`.", "stability": "stable", "summary": "Access level of the npm package." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 720 }, "name": "npmAccess", "optional": true, "type": { "fqn": "projen.javascript.NpmAccess" } }, { "abstract": true, "docs": { "default": "\"latest\"", "remarks": "To set the npm dist-tag for release branches, set the `npmDistTag` property\nfor each branch.", "stability": "stable", "summary": "The npmDistTag to use when publishing from the default branch." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 610 }, "name": "npmDistTag", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "true", "stability": "stable", "summary": "Defines an .npmignore file. Normally this is only needed for libraries that are packaged as tarballs." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 384 }, "name": "npmignoreEnabled", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Configuration options for .npmignore file." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 378 }, "name": "npmIgnoreOptions", "optional": true, "type": { "fqn": "projen.IgnoreFileOptions" } }, { "abstract": true, "docs": { "default": "\"https://registry.npmjs.org\"", "remarks": "Must be a URL (e.g. start with \"https://\" or \"http://\")", "stability": "stable", "summary": "The base URL of the npm package registry." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 712 }, "name": "npmRegistryUrl", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "\"NPM_TOKEN\"", "stability": "stable", "summary": "GitHub secret which contains the NPM token to use when publishing packages." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 705 }, "name": "npmTokenSecret", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "\".\"", "remarks": "If this project has a parent, this directory is relative to the parent\ndirectory and it cannot be the same as the parent or any of it's other\nsub-projects.", "stability": "stable", "summary": "The root directory of the project. Relative to this directory, all files are synthesized." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 1008 }, "name": "outdir", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "true", "stability": "stable", "summary": "Defines a `package` task that will produce an npm tarball under the artifacts directory (e.g. `dist`)." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 373 }, "name": "package", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "NodePackageManager.YARN", "stability": "stable", "summary": "The Node Package Manager used to execute scripts." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 699 }, "name": "packageManager", "optional": true, "type": { "fqn": "projen.javascript.NodePackageManager" } }, { "abstract": true, "docs": { "custom": { "featured": "true" }, "default": "- defaults to project name", "stability": "stable", "summary": "The \"name\" in package.json." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 693 }, "name": "packageName", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "The parent project, if this project is part of a bigger project." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 997 }, "name": "parent", "optional": true, "type": { "fqn": "projen.Project" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Options for `peerDeps`." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 686 }, "name": "peerDependencyOptions", "optional": true, "type": { "fqn": "projen.javascript.PeerDependencyOptions" } }, { "abstract": true, "docs": { "default": "[]", "remarks": "Dependencies listed here are required to\nbe installed (and satisfied) by the _consumer_ of this library. Using peer\ndependencies allows you to ensure that only a single module of a certain\nlibrary exists in the `node_modules` tree of your consumers.\n\nNote that prior to npm@7, peer dependencies are _not_ automatically\ninstalled, which means that adding peer dependencies to a library will be a\nbreaking change for your customers.\n\nUnless `peerDependencyOptions.pinnedDevDependency` is disabled (it is\nenabled by default), projen will automatically add a dev dependency with a\npinned version for each peer dependency. This will ensure that you build &\ntest your module against the lowest peer version required.", "stability": "stable", "summary": "Peer dependencies for this module." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 681 }, "name": "peerDeps", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } }, { "abstract": true, "docs": { "default": "\"7\"", "stability": "stable", "summary": "The version of PNPM to use if using PNPM as a package manager." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 662 }, "name": "pnpmVersion", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "[]", "stability": "stable", "summary": "Steps to execute after build as part of the release workflow." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 602 }, "name": "postBuildSteps", "optional": true, "type": { "collection": { "elementtype": { "fqn": "projen.github.workflows.JobStep" }, "kind": "array" } } }, { "abstract": true, "docs": { "default": "- normal semantic versions", "stability": "stable", "summary": "Bump versions from the default branch as pre-releases (e.g. \"beta\", \"alpha\", \"pre\")." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 596 }, "name": "prerelease", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Setup prettier." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 367 }, "name": "prettier", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- default options", "stability": "stable", "summary": "Prettier options." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 361 }, "name": "prettierOptions", "optional": true, "type": { "fqn": "projen.javascript.PrettierOptions" } }, { "abstract": true, "docs": { "default": "\"npx projen\"", "remarks": "Can be used to customize in special environments.", "stability": "stable", "summary": "The shell command to use in order to run the projen CLI." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 992 }, "name": "projenCommand", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "- use a personal access token named PROJEN_GITHUB_TOKEN", "stability": "stable", "summary": "Choose a method of providing GitHub API access for projen workflows." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 908 }, "name": "projenCredentials", "optional": true, "type": { "fqn": "projen.github.GithubCredentials" } }, { "abstract": true, "docs": { "default": "true", "stability": "stable", "summary": "Indicates of \"projen\" should be installed as a devDependency." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 355 }, "name": "projenDevDependency", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- true if projenrcJson is false", "stability": "stable", "summary": "Generate (once) .projenrc.js (in JavaScript). Set to `false` in order to disable .projenrc.js generation." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 349 }, "name": "projenrcJs", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Generate (once) .projenrc.json (in JSON). Set to `false` in order to disable .projenrc.json generation." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 985 }, "name": "projenrcJson", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- default options", "stability": "stable", "summary": "Options for .projenrc.json." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 979 }, "name": "projenrcJsonOptions", "optional": true, "type": { "fqn": "projen.ProjenrcJsonOptions" } }, { "abstract": true, "docs": { "default": "- default options", "stability": "stable", "summary": "Options for .projenrc.js." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 343 }, "name": "projenrcJsOptions", "optional": true, "type": { "fqn": "projen.javascript.ProjenrcOptions" } }, { "abstract": true, "docs": { "custom": { "pjnew": "true" }, "default": "false", "stability": "stable", "summary": "Use TypeScript for your projenrc file (`.projenrc.ts`)." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 235 }, "name": "projenrcTs", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Options for .projenrc.ts." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 228 }, "name": "projenrcTsOptions", "optional": true, "type": { "fqn": "projen.typescript.ProjenrcOptions" } }, { "abstract": true, "docs": { "default": "- Defaults to the latest version.", "stability": "stable", "summary": "Version of projen to install." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 337 }, "name": "projenVersion", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Instead of actually publishing to package managers, just print the publishing command." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 590 }, "name": "publishDryRun", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "false", "remarks": "Normally, publishing only happens within automated workflows. Enable this\nin order to create a publishing task for each publishing activity.", "stability": "stable", "summary": "Define publishing tasks that can be executed manually as well as workflows." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 584 }, "name": "publishTasks", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- no publishing", "stability": "stable", "summary": "Publish Go bindings to a git repository." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 108 }, "name": "publishToGo", "optional": true, "type": { "fqn": "projen.cdk.JsiiGoTarget" } }, { "abstract": true, "docs": { "default": "- no publishing", "stability": "stable", "summary": "Publish to maven." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 102 }, "name": "publishToMaven", "optional": true, "type": { "fqn": "projen.cdk.JsiiJavaTarget" } }, { "abstract": true, "docs": { "default": "- no publishing", "stability": "stable", "summary": "Publish to NuGet." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 96 }, "name": "publishToNuget", "optional": true, "type": { "fqn": "projen.cdk.JsiiDotNetTarget" } }, { "abstract": true, "docs": { "default": "- no publishing", "stability": "stable", "summary": "Publish to pypi." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 90 }, "name": "publishToPypi", "optional": true, "type": { "fqn": "projen.cdk.JsiiPythonTarget" } }, { "abstract": true, "docs": { "default": "true", "stability": "stable", "summary": "Include a GitHub pull request template." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 331 }, "name": "pullRequestTemplate", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- default content", "stability": "stable", "summary": "The contents of the pull request template." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 325 }, "name": "pullRequestTemplateContents", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } }, { "abstract": true, "docs": { "default": "- { filename: 'README.md', contents: '# replace this' }", "stability": "stable", "summary": "The README setup." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 902 }, "name": "readme", "optional": true, "type": { "fqn": "projen.SampleReadmeProps" } }, { "abstract": true, "docs": { "default": "ReleasableCommits.everyCommit()", "stability": "stable", "summary": "Find commits that should be considered releasable Used to decide if a release is required." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 576 }, "name": "releasableCommits", "optional": true, "type": { "fqn": "projen.ReleasableCommits" } }, { "abstract": true, "docs": { "default": "- true (false for subprojects)", "stability": "stable", "summary": "Add release management to this project." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 319 }, "name": "release", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- no additional branches are used for release. you can use\n`addBranch()` to add additional branches.", "remarks": "A workflow will be created for each\nrelease branch which will publish releases from commits in this branch.\nEach release branch _must_ be assigned a major version number which is used\nto enforce that versions published from that branch always use that major\nversion. If multiple branches are used, the `majorVersion` field must also\nbe provided for the default branch.", "stability": "stable", "summary": "Defines additional release branches." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 570 }, "name": "releaseBranches", "optional": true, "type": { "collection": { "elementtype": { "fqn": "projen.release.BranchOptions" }, "kind": "map" } } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Create a github issue on every failed publishing task." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 557 }, "name": "releaseFailureIssue", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "\"failed-release\"", "remarks": "Only applies if `releaseFailureIssue` is true.", "stability": "stable", "summary": "The label to apply to issues indicating publish failures." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 551 }, "name": "releaseFailureIssueLabel", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "\"v\"", "remarks": "Useful if you are releasing on multiple branches with overlapping version numbers.\nNote: this prefix is used to detect the latest tagged version\nwhen bumping, so if you change this on a project with an existing version\nhistory, you may need to manually tag your latest release\nwith the new prefix.", "stability": "stable", "summary": "Automatically add the given prefix to release tags." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 544 }, "name": "releaseTagPrefix", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Automatically release to npm when new versions are introduced." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 313 }, "name": "releaseToNpm", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- Continuous releases (`ReleaseTrigger.continuous()`)", "stability": "stable", "summary": "The release trigger to use." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 534 }, "name": "releaseTrigger", "optional": true, "type": { "fqn": "projen.release.ReleaseTrigger" } }, { "abstract": true, "docs": { "default": "\"Release\"", "stability": "stable", "summary": "The name of the default release workflow." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 528 }, "name": "releaseWorkflowName", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "A set of workflow steps to execute in order to setup the workflow container." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 522 }, "name": "releaseWorkflowSetupSteps", "optional": true, "type": { "collection": { "elementtype": { "fqn": "projen.github.workflows.JobStep" }, "kind": "array" } } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Use renovatebot to handle dependency upgrades." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 973 }, "name": "renovatebot", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- default options", "stability": "stable", "summary": "Options for renovatebot." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 967 }, "name": "renovatebotOptions", "optional": true, "type": { "fqn": "projen.RenovatebotOptions" } }, { "abstract": true, "docs": { "remarks": "See https://classic.yarnpkg.com/en/docs/package-json/#toc-repository", "stability": "stable", "summary": "The repository is the location where the actual code for your package lives." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 656 }, "name": "repository", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "If the package.json for your package is not in the root directory (for example if it is part of a monorepo), you can specify the directory in which it lives." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 650 }, "name": "repositoryDirectory", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "\".\"", "stability": "stable" }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 84 }, "name": "rootdir", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "true", "stability": "stable", "summary": "Generate one-time sample in `src/` and `test/` if there are no files there." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 223 }, "name": "sampleCode", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- fetch all scoped packages from the public npm registry", "stability": "stable", "summary": "Options for privately hosted scoped packages." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 645 }, "name": "scopedPackagesOptions", "optional": true, "type": { "collection": { "elementtype": { "fqn": "projen.javascript.ScopedPackagesOptions" }, "kind": "array" } } }, { "abstract": true, "docs": { "default": "\"src\"", "stability": "stable", "summary": "Typescript sources directory." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 217 }, "name": "srcdir", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Package's Stability." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 639 }, "name": "stability", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "false", "remarks": "See `staleOptions` for options.", "stability": "stable", "summary": "Auto-close of stale issues and pull request." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 896 }, "name": "stale", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- see defaults in `StaleOptions`", "remarks": "To disable set `stale` to `false`.", "stability": "stable", "summary": "Auto-close stale issues and pull requests." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 889 }, "name": "staleOptions", "optional": true, "type": { "fqn": "projen.github.StaleOptions" } }, { "abstract": true, "docs": { "default": "\"test\"", "remarks": "Tests files should be named `xxx.test.ts`.\nIf this directory is under `srcdir` (e.g. `src/test`, `src/__tests__`),\nthen tests are going to be compiled into `lib/` and executed as javascript.\nIf the test directory is outside of `src`, then we configure jest to\ncompile the code in-memory.", "stability": "stable", "summary": "Jest tests directory." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 211 }, "name": "testdir", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "- default options", "stability": "stable", "summary": "Custom TSConfig." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 201 }, "name": "tsconfig", "optional": true, "type": { "fqn": "projen.javascript.TypescriptConfigOptions" } }, { "abstract": true, "docs": { "default": "- use the production tsconfig options", "stability": "stable", "summary": "Custom tsconfig options for the development tsconfig.json file (used for testing)." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 195 }, "name": "tsconfigDev", "optional": true, "type": { "fqn": "projen.javascript.TypescriptConfigOptions" } }, { "abstract": true, "docs": { "default": "\"tsconfig.dev.json\"", "stability": "stable", "summary": "The name of the development tsconfig.json file." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 189 }, "name": "tsconfigDevFile", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "\"latest\"", "remarks": "NOTE: Typescript is not semantically versioned and should remain on the\nsame minor, so we recommend using a `~` dependency (e.g. `~1.2.3`).", "stability": "stable", "summary": "TypeScript version to use." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 183 }, "name": "typescriptVersion", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "- standard configuration applicable for GitHub repositories", "remarks": "Given values either append to default configuration or overwrite values in it.", "stability": "stable", "summary": "Custom configuration used when creating changelog with standard-version package." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 517 }, "name": "versionrcOptions", "optional": true, "type": { "collection": { "elementtype": { "primitive": "any" }, "kind": "map" } } }, { "abstract": true, "docs": { "default": "true", "remarks": "Enabled by default for root projects. Disabled for non-root projects.", "stability": "stable", "summary": "Enable VSCode integration." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 882 }, "name": "vscode", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "\"yarn install --frozen-lockfile && yarn projen\"", "stability": "stable", "summary": "Workflow steps to use in order to bootstrap this repo." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 307 }, "name": "workflowBootstrapSteps", "optional": true, "type": { "collection": { "elementtype": { "fqn": "projen.github.workflows.JobStep" }, "kind": "array" } } }, { "abstract": true, "docs": { "default": "- default image", "stability": "stable", "summary": "Container image to use for GitHub workflows." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 510 }, "name": "workflowContainerImage", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "- GitHub Actions", "stability": "stable", "summary": "The git identity to use in workflows." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 301 }, "name": "workflowGitIdentity", "optional": true, "type": { "fqn": "projen.github.GitIdentity" } }, { "abstract": true, "docs": { "default": "- same as `minNodeVersion`", "stability": "stable", "summary": "The node version to use in GitHub workflows." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 295 }, "name": "workflowNodeVersion", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Enable Node.js package cache in GitHub workflows." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 289 }, "name": "workflowPackageCache", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "[\"ubuntu-latest\"]", "stability": "stable", "summary": "Github Runner selection labels." }, "immutable": true, "locationInModule": { "filename": "src/construct-project-options.ts", "line": 504 }, "name": "workflowRunsOn", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } } ], "symbolId": "src/construct-project-options:ConstructProjectOptions" }, "schuettc.ProjenProject": { "assembly": "schuettc", "base": "projen.cdk.JsiiProject", "docs": { "custom": { "pjid": "projen" }, "stability": "stable", "summary": "A project to create new projen projects & components." }, "fqn": "schuettc.ProjenProject", "initializer": { "docs": { "stability": "stable" }, "locationInModule": { "filename": "src/projen-project.ts", "line": 20 }, "parameters": [ { "name": "options", "type": { "fqn": "schuettc.ProjenProjectOptions" } } ] }, "kind": "class", "locationInModule": { "filename": "src/projen-project.ts", "line": 19 }, "name": "ProjenProject", "symbolId": "src/projen-project:ProjenProject" }, "schuettc.ProjenProjectOptions": { "assembly": "schuettc", "datatype": true, "docs": { "stability": "stable", "summary": "ProjenProjectOptions." }, "fqn": "schuettc.ProjenProjectOptions", "kind": "interface", "locationInModule": { "filename": "src/projen-project-options.ts", "line": 7 }, "name": "ProjenProjectOptions", "properties": [ { "abstract": true, "docs": { "stability": "stable", "summary": "Author's name." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 738 }, "name": "authorName", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable" }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 917 }, "name": "repo", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "['feat', 'fix', 'chore', 'revert', 'docs', 'ci']", "stability": "stable", "summary": "Which conventional commit types are allowed to be used Types listed in `releasableCommitTypes` are always allowed." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 930 }, "name": "allowedCommitTypes", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } }, { "abstract": true, "docs": { "default": "true", "remarks": "This is normally only allowed for libraries. For apps, there's no meaning\nfor specifying these.", "stability": "stable", "summary": "Allow the project to include `peerDependencies` and `bundledDependencies`." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 751 }, "name": "allowLibraryDependencies", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "\"dist\"", "stability": "stable", "summary": "A directory which will contain build artifacts." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 374 }, "name": "artifactsDirectory", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "$GIT_USER_EMAIL", "stability": "stable", "summary": "Email or URL of the library author." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 78 }, "name": "authorAddress", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Author's e-mail." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 743 }, "name": "authorEmail", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Is the author an organization." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 733 }, "name": "authorOrganization", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Author's URL / Website." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 728 }, "name": "authorUrl", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "- auto approve is disabled", "stability": "stable", "summary": "Enable and configure the 'auto approve' workflow." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 837 }, "name": "autoApproveOptions", "optional": true, "type": { "fqn": "projen.github.AutoApproveOptions" } }, { "abstract": true, "docs": { "default": "- true", "remarks": "Throw if set to true but `autoApproveOptions` are not defined.", "stability": "stable", "summary": "Automatically approve deps upgrade PRs, allowing them to be merged by mergify (if configued)." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 368 }, "name": "autoApproveUpgrades", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "true", "stability": "stable", "summary": "Automatically add all executables under the `bin` directory to your `package.json` file under the `bin` section." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 723 }, "name": "autoDetectBin", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- tokens will be used", "remarks": "Remember to install the app and to configure credentials.", "stability": "stable", "summary": "Use this app for workflow automation." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 936 }, "name": "automationAppName", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "true", "remarks": "Has no effect if `github.mergify`\nis set to false.", "stability": "stable", "summary": "Enable automatic merging on GitHub." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 831 }, "name": "autoMerge", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- see defaults in `AutoMergeOptions`", "remarks": "Has no effect if\n`github.mergify` or `autoMerge` is set to false.", "stability": "stable", "summary": "Configure options for automatic merging on GitHub." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 823 }, "name": "autoMergeOptions", "optional": true, "type": { "fqn": "projen.github.AutoMergeOptions" } }, { "abstract": true, "docs": { "remarks": "You can use this option to add/customize how binaries are represented in\nyour `package.json`, but unless `autoDetectBin` is `false`, every\nexecutable file under `bin` will automatically be added to this section.", "stability": "stable", "summary": "Binary programs vended with your module." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 717 }, "name": "bin", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "map" } } }, { "abstract": true, "docs": { "stability": "stable", "summary": "The email address to which issues should be reported." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 709 }, "name": "bugsEmail", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "The url to your project's issue tracker." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 704 }, "name": "bugsUrl", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "- true if not a subproject", "stability": "stable", "summary": "Define a GitHub workflow for building PRs." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 361 }, "name": "buildWorkflow", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "\"{ pullRequest: {}, workflowDispatch: {} }\"", "stability": "stable", "summary": "Build workflow triggers." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 355 }, "name": "buildWorkflowTriggers", "optional": true, "type": { "fqn": "projen.github.workflows.Triggers" } }, { "abstract": true, "docs": { "remarks": "These modules will be\nadded both to the `dependencies` section and `bundledDependencies` section of\nyour `package.json`.\n\nThe recommendation is to only specify the module name here (e.g.\n`express`). This will behave similar to `yarn add` or `npm install` in the\nsense that it will add the module as a dependency to your `package.json`\nfile with the latest version (`^`). You can specify semver requirements in\nthe same syntax passed to `npm i` or `yarn add` (e.g. `express@^2`) and\nthis will be what you `package.json` will eventually include.", "stability": "stable", "summary": "List of dependencies to bundle into this module." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 699 }, "name": "bundledDeps", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Options for `Bundler`." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 349 }, "name": "bundlerOptions", "optional": true, "type": { "fqn": "projen.javascript.BundlerOptions" } }, { "abstract": true, "docs": { "default": "- true, but false for subprojects", "stability": "stable", "summary": "Add a `clobber` task which resets the repo to origin." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 815 }, "name": "clobber", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- undefined", "remarks": "This is required if publishing packages to, or installing scoped packages from AWS CodeArtifact", "stability": "stable", "summary": "Options for npm packages using AWS CodeArtifact." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 684 }, "name": "codeArtifactOptions", "optional": true, "type": { "fqn": "projen.javascript.CodeArtifactOptions" } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v3 A secret is required for private repos. Configured with `@codeCovTokenSecret`." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 344 }, "name": "codeCov", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- if this option is not specified, only public repositories are supported", "stability": "stable", "summary": "Define the secret name for a specified https://codecov.io/ token A secret is required to send coverage for private repositories." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 338 }, "name": "codeCovTokenSecret", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "true", "stability": "stable", "summary": "Whether to commit the managed files by default." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 906 }, "name": "commitGenerated", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "false", "remarks": "- You can manually run compatibility tests using `yarn compat` if this feature is disabled.\n- You can ignore compatibility failures by adding lines to a \".compatignore\" file.", "stability": "stable", "summary": "Automatically run API compatibility test against the latest version published to npm after compilation." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 72 }, "name": "compat", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "\".compatignore\"", "stability": "stable", "summary": "Name of the ignore file for API compatibility tests." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 64 }, "name": "compatIgnore", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Emit a compressed version of the assembly." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 58 }, "name": "compressAssembly", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- defaults to the value of authorName or \"\" if `authorName` is undefined.", "stability": "stable", "summary": "License copyright owner." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 332 }, "name": "copyrightOwner", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "- current year", "stability": "stable", "summary": "The copyright years to put in the LICENSE file." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 326 }, "name": "copyrightPeriod", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "\"main\"", "stability": "stable", "summary": "The name of the main release branch." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 380 }, "name": "defaultReleaseBranch", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "false", "remarks": "Cannot be used in conjunction with `depsUpgrade`.", "stability": "stable", "summary": "Use dependabot to handle dependency upgrades." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 320 }, "name": "dependabot", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- default options", "stability": "stable", "summary": "Options for dependabot." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 313 }, "name": "dependabotOptions", "optional": true, "type": { "fqn": "projen.github.DependabotOptions" } }, { "abstract": true, "docs": { "custom": { "featured": "true" }, "default": "[]", "remarks": "The recommendation is to only specify the module name here (e.g.\n`express`). This will behave similar to `yarn add` or `npm install` in the\nsense that it will add the module as a dependency to your `package.json`\nfile with the latest version (`^`). You can specify semver requirements in\nthe same syntax passed to `npm i` or `yarn add` (e.g. `express@^2`) and\nthis will be what you `package.json` will eventually include.", "stability": "stable", "summary": "Runtime dependencies of this module." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 677 }, "name": "deps", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } }, { "abstract": true, "docs": { "default": "true", "remarks": "Cannot be used in conjunction with `dependabot`.", "stability": "stable", "summary": "Use github workflows to handle dependency upgrades." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 307 }, "name": "depsUpgrade", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- default options", "stability": "stable", "summary": "Options for `UpgradeDependencies`." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 300 }, "name": "depsUpgradeOptions", "optional": true, "type": { "fqn": "projen.javascript.UpgradeDependenciesOptions" } }, { "abstract": true, "docs": { "custom": { "featured": "true" }, "remarks": "It can be used when searching for packages in a package manager as well.\nSee https://classic.yarnpkg.com/en/docs/package-json/#toc-description", "stability": "stable", "summary": "The description is just a string that helps people understand the purpose of the package." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 664 }, "name": "description", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Add a VSCode development environment (used for GitHub Codespaces)." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 809 }, "name": "devContainer", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "custom": { "featured": "true" }, "default": "[]", "remarks": "These dependencies will only be\navailable in your build environment but will not be fetched when this\nmodule is consumed.\n\nThe recommendation is to only specify the module name here (e.g.\n`express`). This will behave similar to `yarn add` or `npm install` in the\nsense that it will add the module as a dependency to your `package.json`\nfile with the latest version (`^`). You can specify semver requirements in\nthe same syntax passed to `npm i` or `yarn add` (e.g. `express@^2`) and\nthis will be what you `package.json` will eventually include.", "stability": "stable", "summary": "Build dependencies for this module." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 656 }, "name": "devDeps", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Do not generate a `tsconfig.json` file (used by jsii projects since tsconfig.json is generated by the jsii compiler)." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 165 }, "name": "disableTsconfig", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Do not generate a `tsconfig.dev.json` file." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 159 }, "name": "disableTsconfigDev", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Docgen by Typedoc." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 153 }, "name": "docgen", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "\"API.md\"", "stability": "stable", "summary": "File path for generated docs." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 52 }, "name": "docgenFilePath", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "\"docs\"", "stability": "stable", "summary": "Docs directory." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 147 }, "name": "docsDirectory", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "\"lib/index.js\"", "stability": "stable", "summary": "Module entrypoint (`main` in `package.json`). Set to an empty string to not include `main` in your package.json." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 639 }, "name": "entrypoint", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "- .d.ts file derived from the project's entrypoint (usually lib/index.d.ts)", "stability": "stable", "summary": "The .d.ts file that includes the type declarations for this module." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 141 }, "name": "entrypointTypes", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "true", "stability": "stable", "summary": "Setup eslint." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 135 }, "name": "eslint", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- opinionated default options", "stability": "stable", "summary": "Eslint options." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 129 }, "name": "eslintOptions", "optional": true, "type": { "fqn": "projen.javascript.EslintOptions" } }, { "abstract": true, "docs": { "remarks": "By default, jsii will include all *.ts files (except .d.ts files) in the TypeScript compiler input.\nThis can be problematic for example when the package's build or test procedure generates .ts files\nthat cannot be compiled with jsii's compiler settings.", "stability": "stable", "summary": "Accepts a list of glob patterns. Files matching any of those patterns will be excluded from the TypeScript compiler input." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 46 }, "name": "excludeTypescript", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } }, { "abstract": true, "docs": { "default": "true", "remarks": "Enabled by default for root projects. Disabled for non-root projects.", "stability": "stable", "summary": "Enable GitHub integration." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 803 }, "name": "github", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- see GitHubOptions", "stability": "stable", "summary": "Options for GitHub integration." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 796 }, "name": "githubOptions", "optional": true, "type": { "fqn": "projen.github.GitHubOptions" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Additional entries to .gitignore." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 294 }, "name": "gitignore", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Configuration options for .gitignore file." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 900 }, "name": "gitIgnoreOptions", "optional": true, "type": { "fqn": "projen.IgnoreFileOptions" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Configuration options for git." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 895 }, "name": "gitOptions", "optional": true, "type": { "fqn": "projen.GitOptions" } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Add a Gitpod development environment." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 790 }, "name": "gitpod", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Package's Homepage / Website." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 632 }, "name": "homepage", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "true", "stability": "stable", "summary": "Setup jest unit tests." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 289 }, "name": "jest", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- default options", "stability": "stable", "summary": "Jest options." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 283 }, "name": "jestOptions", "optional": true, "type": { "fqn": "projen.javascript.JestOptions" } }, { "abstract": true, "docs": { "default": "\"latest\"", "stability": "stable", "summary": "Version requirement of `publib` which is used to publish modules to npm." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 510 }, "name": "jsiiReleaseVersion", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Keywords to include in `package.json`." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 627 }, "name": "keywords", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } }, { "abstract": true, "docs": { "default": "\"lib\"", "stability": "stable", "summary": "Typescript artifacts output directory." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 123 }, "name": "libdir", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "\"MIT\"", "remarks": "See https://github.com/projen/projen/tree/main/license-text for a list of supported licenses.\nUse the `licensed` option if you want to no license to be specified.", "stability": "stable", "summary": "License's SPDX identifier." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 622 }, "name": "license", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "true", "stability": "stable", "summary": "Indicates if a license should be added." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 614 }, "name": "licensed", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "{}", "stability": "stable", "summary": "Configure logging options such as verbosity." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 890 }, "name": "logging", "optional": true, "type": { "fqn": "projen.LoggerOptions" } }, { "abstract": true, "docs": { "default": "- Major version is not enforced.", "remarks": "If this is specified, we bump the latest version of this major version line.\nIf not specified, we bump the global latest version.", "stability": "stable", "summary": "Major version to release from the default branch." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 504 }, "name": "majorVersion", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "default": "- no max", "stability": "stable", "summary": "Minimum node.js version to require via `engines` (inclusive)." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 608 }, "name": "maxNodeVersion", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "- No minimum version is being enforced", "remarks": "This can be useful to set to 1, as breaking changes before the 1.x major\nrelease are not incrementing the major version number.\n\nCan not be set together with `majorVersion`.", "stability": "stable", "summary": "Minimal Major version to release." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 496 }, "name": "minMajorVersion", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "default": "- no \"engines\" specified", "stability": "stable", "summary": "Minimum Node.js version to require via package.json `engines` (inclusive)." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 602 }, "name": "minNodeVersion", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "true", "remarks": "This means\nthat any files synthesized by projen or e.g. test snapshots will always be up-to-date\nbefore a PR is merged.\n\nImplies that PR builds do not have anti-tamper checks.", "stability": "stable", "summary": "Automatically update files modified during builds to pull-request branches." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 277 }, "name": "mutableBuild", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "custom": { "featured": "true" }, "default": "$BASEDIR", "stability": "stable", "summary": "This is the name of your project." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 913 }, "name": "name", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "- for scoped packages (e.g. `foo@bar`), the default is\n`NpmAccess.RESTRICTED`, for non-scoped packages, the default is\n`NpmAccess.PUBLIC`.", "stability": "stable", "summary": "Access level of the npm package." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 596 }, "name": "npmAccess", "optional": true, "type": { "fqn": "projen.javascript.NpmAccess" } }, { "abstract": true, "docs": { "default": "\"latest\"", "remarks": "To set the npm dist-tag for release branches, set the `npmDistTag` property\nfor each branch.", "stability": "stable", "summary": "The npmDistTag to use when publishing from the default branch." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 486 }, "name": "npmDistTag", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "true", "stability": "stable", "summary": "Defines an .npmignore file. Normally this is only needed for libraries that are packaged as tarballs." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 266 }, "name": "npmignoreEnabled", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Configuration options for .npmignore file." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 260 }, "name": "npmIgnoreOptions", "optional": true, "type": { "fqn": "projen.IgnoreFileOptions" } }, { "abstract": true, "docs": { "default": "\"https://registry.npmjs.org\"", "remarks": "Must be a URL (e.g. start with \"https://\" or \"http://\")", "stability": "stable", "summary": "The base URL of the npm package registry." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 588 }, "name": "npmRegistryUrl", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "\"NPM_TOKEN\"", "stability": "stable", "summary": "GitHub secret which contains the NPM token to use when publishing packages." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 581 }, "name": "npmTokenSecret", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "\".\"", "remarks": "If this project has a parent, this directory is relative to the parent\ndirectory and it cannot be the same as the parent or any of it's other\nsub-projects.", "stability": "stable", "summary": "The root directory of the project. Relative to this directory, all files are synthesized." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 884 }, "name": "outdir", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "true", "stability": "stable", "summary": "Allow the repo owner to self approve PRs by putting a label on it." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 942 }, "name": "ownerCanSelfApprovePRs", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "true", "stability": "stable", "summary": "Defines a `package` task that will produce an npm tarball under the artifacts directory (e.g. `dist`)." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 255 }, "name": "package", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "NodePackageManager.YARN", "stability": "stable", "summary": "The Node Package Manager used to execute scripts." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 575 }, "name": "packageManager", "optional": true, "type": { "fqn": "projen.javascript.NodePackageManager" } }, { "abstract": true, "docs": { "custom": { "featured": "true" }, "default": "- defaults to project name", "stability": "stable", "summary": "The \"name\" in package.json." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 569 }, "name": "packageName", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "The parent project, if this project is part of a bigger project." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 873 }, "name": "parent", "optional": true, "type": { "fqn": "projen.Project" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Options for `peerDeps`." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 562 }, "name": "peerDependencyOptions", "optional": true, "type": { "fqn": "projen.javascript.PeerDependencyOptions" } }, { "abstract": true, "docs": { "default": "[]", "remarks": "Dependencies listed here are required to\nbe installed (and satisfied) by the _consumer_ of this library. Using peer\ndependencies allows you to ensure that only a single module of a certain\nlibrary exists in the `node_modules` tree of your consumers.\n\nNote that prior to npm@7, peer dependencies are _not_ automatically\ninstalled, which means that adding peer dependencies to a library will be a\nbreaking change for your customers.\n\nUnless `peerDependencyOptions.pinnedDevDependency` is disabled (it is\nenabled by default), projen will automatically add a dev dependency with a\npinned version for each peer dependency. This will ensure that you build &\ntest your module against the lowest peer version required.", "stability": "stable", "summary": "Peer dependencies for this module." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 557 }, "name": "peerDeps", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } }, { "abstract": true, "docs": { "default": "\"7\"", "stability": "stable", "summary": "The version of PNPM to use if using PNPM as a package manager." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 538 }, "name": "pnpmVersion", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "[]", "stability": "stable", "summary": "Steps to execute after build as part of the release workflow." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 478 }, "name": "postBuildSteps", "optional": true, "type": { "collection": { "elementtype": { "fqn": "projen.github.workflows.JobStep" }, "kind": "array" } } }, { "abstract": true, "docs": { "default": "- normal semantic versions", "stability": "stable", "summary": "Bump versions from the default branch as pre-releases (e.g. \"beta\", \"alpha\", \"pre\")." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 472 }, "name": "prerelease", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Setup prettier." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 249 }, "name": "prettier", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- default options", "stability": "stable", "summary": "Prettier options." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 243 }, "name": "prettierOptions", "optional": true, "type": { "fqn": "projen.javascript.PrettierOptions" } }, { "abstract": true, "docs": { "default": "\"npx projen\"", "remarks": "Can be used to customize in special environments.", "stability": "stable", "summary": "The shell command to use in order to run the projen CLI." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 868 }, "name": "projenCommand", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "- use a personal access token named PROJEN_GITHUB_TOKEN", "stability": "stable", "summary": "Choose a method of providing GitHub API access for projen workflows." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 784 }, "name": "projenCredentials", "optional": true, "type": { "fqn": "projen.github.GithubCredentials" } }, { "abstract": true, "docs": { "default": "true", "stability": "stable", "summary": "Indicates of \"projen\" should be installed as a devDependency." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 237 }, "name": "projenDevDependency", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- true if projenrcJson is false", "stability": "stable", "summary": "Generate (once) .projenrc.js (in JavaScript). Set to `false` in order to disable .projenrc.js generation." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 231 }, "name": "projenrcJs", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Generate (once) .projenrc.json (in JSON). Set to `false` in order to disable .projenrc.json generation." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 861 }, "name": "projenrcJson", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- default options", "stability": "stable", "summary": "Options for .projenrc.json." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 855 }, "name": "projenrcJsonOptions", "optional": true, "type": { "fqn": "projen.ProjenrcJsonOptions" } }, { "abstract": true, "docs": { "default": "- default options", "stability": "stable", "summary": "Options for .projenrc.js." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 225 }, "name": "projenrcJsOptions", "optional": true, "type": { "fqn": "projen.javascript.ProjenrcOptions" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Options for .projenrc.ts." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 117 }, "name": "projenrcTsOptions", "optional": true, "type": { "fqn": "projen.typescript.ProjenrcOptions" } }, { "abstract": true, "docs": { "default": "- Defaults to the latest version.", "stability": "stable", "summary": "Version of projen to install." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 219 }, "name": "projenVersion", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Instead of actually publishing to package managers, just print the publishing command." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 466 }, "name": "publishDryRun", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "false", "remarks": "Normally, publishing only happens within automated workflows. Enable this\nin order to create a publishing task for each publishing activity.", "stability": "stable", "summary": "Define publishing tasks that can be executed manually as well as workflows." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 460 }, "name": "publishTasks", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- no publishing", "stability": "stable", "summary": "Publish Go bindings to a git repository." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 36 }, "name": "publishToGo", "optional": true, "type": { "fqn": "projen.cdk.JsiiGoTarget" } }, { "abstract": true, "docs": { "default": "- no publishing", "stability": "stable", "summary": "Publish to maven." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 30 }, "name": "publishToMaven", "optional": true, "type": { "fqn": "projen.cdk.JsiiJavaTarget" } }, { "abstract": true, "docs": { "default": "- no publishing", "stability": "stable", "summary": "Publish to NuGet." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 24 }, "name": "publishToNuget", "optional": true, "type": { "fqn": "projen.cdk.JsiiDotNetTarget" } }, { "abstract": true, "docs": { "default": "- no publishing", "stability": "stable", "summary": "Publish to pypi." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 18 }, "name": "publishToPypi", "optional": true, "type": { "fqn": "projen.cdk.JsiiPythonTarget" } }, { "abstract": true, "docs": { "default": "true", "stability": "stable", "summary": "Include a GitHub pull request template." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 213 }, "name": "pullRequestTemplate", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- default content", "stability": "stable", "summary": "The contents of the pull request template." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 207 }, "name": "pullRequestTemplateContents", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } }, { "abstract": true, "docs": { "default": "- { filename: 'README.md', contents: '# replace this' }", "stability": "stable", "summary": "The README setup." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 778 }, "name": "readme", "optional": true, "type": { "fqn": "projen.SampleReadmeProps" } }, { "abstract": true, "docs": { "default": "['feat', 'fix', 'chore', 'revert']", "stability": "stable", "summary": "Which conventional commit types should be released." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 923 }, "name": "releasableCommitTypes", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Add release management to this project." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 201 }, "name": "release", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- no additional branches are used for release. you can use\n`addBranch()` to add additional branches.", "remarks": "A workflow will be created for each\nrelease branch which will publish releases from commits in this branch.\nEach release branch _must_ be assigned a major version number which is used\nto enforce that versions published from that branch always use that major\nversion. If multiple branches are used, the `majorVersion` field must also\nbe provided for the default branch.", "stability": "stable", "summary": "Defines additional release branches." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 452 }, "name": "releaseBranches", "optional": true, "type": { "collection": { "elementtype": { "fqn": "projen.release.BranchOptions" }, "kind": "map" } } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Create a github issue on every failed publishing task." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 439 }, "name": "releaseFailureIssue", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "\"failed-release\"", "remarks": "Only applies if `releaseFailureIssue` is true.", "stability": "stable", "summary": "The label to apply to issues indicating publish failures." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 433 }, "name": "releaseFailureIssueLabel", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "\"v\"", "remarks": "Useful if you are releasing on multiple branches with overlapping version numbers.\nNote: this prefix is used to detect the latest tagged version\nwhen bumping, so if you change this on a project with an existing version\nhistory, you may need to manually tag your latest release\nwith the new prefix.", "stability": "stable", "summary": "Automatically add the given prefix to release tags." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 426 }, "name": "releaseTagPrefix", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Automatically release to npm when new versions are introduced." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 195 }, "name": "releaseToNpm", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- Continuous releases (`ReleaseTrigger.continuous()`)", "stability": "stable", "summary": "The release trigger to use." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 416 }, "name": "releaseTrigger", "optional": true, "type": { "fqn": "projen.release.ReleaseTrigger" } }, { "abstract": true, "docs": { "default": "\"Release\"", "stability": "stable", "summary": "The name of the default release workflow." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 410 }, "name": "releaseWorkflowName", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "A set of workflow steps to execute in order to setup the workflow container." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 404 }, "name": "releaseWorkflowSetupSteps", "optional": true, "type": { "collection": { "elementtype": { "fqn": "projen.github.workflows.JobStep" }, "kind": "array" } } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Use renovatebot to handle dependency upgrades." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 849 }, "name": "renovatebot", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- default options", "stability": "stable", "summary": "Options for renovatebot." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 843 }, "name": "renovatebotOptions", "optional": true, "type": { "fqn": "projen.RenovatebotOptions" } }, { "abstract": true, "docs": { "remarks": "See https://classic.yarnpkg.com/en/docs/package-json/#toc-repository", "stability": "stable", "summary": "The repository is the location where the actual code for your package lives." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 532 }, "name": "repository", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "If the package.json for your package is not in the root directory (for example if it is part of a monorepo), you can specify the directory in which it lives." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 526 }, "name": "repositoryDirectory", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "\".\"", "stability": "stable" }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 12 }, "name": "rootdir", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "- fetch all scoped packages from the public npm registry", "stability": "stable", "summary": "Options for privately hosted scoped packages." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 521 }, "name": "scopedPackagesOptions", "optional": true, "type": { "collection": { "elementtype": { "fqn": "projen.javascript.ScopedPackagesOptions" }, "kind": "array" } } }, { "abstract": true, "docs": { "default": "\"src\"", "stability": "stable", "summary": "Typescript sources directory." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 112 }, "name": "srcdir", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Package's Stability." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 515 }, "name": "stability", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "false", "remarks": "See `staleOptions` for options.", "stability": "stable", "summary": "Auto-close of stale issues and pull request." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 772 }, "name": "stale", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- see defaults in `StaleOptions`", "remarks": "To disable set `stale` to `false`.", "stability": "stable", "summary": "Auto-close stale issues and pull requests." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 765 }, "name": "staleOptions", "optional": true, "type": { "fqn": "projen.github.StaleOptions" } }, { "abstract": true, "docs": { "default": "\"test\"", "remarks": "Tests files should be named `xxx.test.ts`.\nIf this directory is under `srcdir` (e.g. `src/test`, `src/__tests__`),\nthen tests are going to be compiled into `lib/` and executed as javascript.\nIf the test directory is outside of `src`, then we configure jest to\ncompile the code in-memory.", "stability": "stable", "summary": "Jest tests directory." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 106 }, "name": "testdir", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "- default options", "stability": "stable", "summary": "Custom TSConfig." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 96 }, "name": "tsconfig", "optional": true, "type": { "fqn": "projen.javascript.TypescriptConfigOptions" } }, { "abstract": true, "docs": { "default": "- use the production tsconfig options", "stability": "stable", "summary": "Custom tsconfig options for the development tsconfig.json file (used for testing)." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 90 }, "name": "tsconfigDev", "optional": true, "type": { "fqn": "projen.javascript.TypescriptConfigOptions" } }, { "abstract": true, "docs": { "default": "\"tsconfig.dev.json\"", "stability": "stable", "summary": "The name of the development tsconfig.json file." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 84 }, "name": "tsconfigDevFile", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "UpgradeDependenciesSchedule.WEEKLY", "stability": "stable" }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 947 }, "name": "upgradesSchedule", "optional": true, "type": { "fqn": "projen.javascript.UpgradeDependenciesSchedule" } }, { "abstract": true, "docs": { "default": "- standard configuration applicable for GitHub repositories", "remarks": "Given values either append to default configuration or overwrite values in it.", "stability": "stable", "summary": "Custom configuration used when creating changelog with standard-version package." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 399 }, "name": "versionrcOptions", "optional": true, "type": { "collection": { "elementtype": { "primitive": "any" }, "kind": "map" } } }, { "abstract": true, "docs": { "default": "true", "remarks": "Enabled by default for root projects. Disabled for non-root projects.", "stability": "stable", "summary": "Enable VSCode integration." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 758 }, "name": "vscode", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "\"yarn install --frozen-lockfile && yarn projen\"", "stability": "stable", "summary": "Workflow steps to use in order to bootstrap this repo." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 189 }, "name": "workflowBootstrapSteps", "optional": true, "type": { "collection": { "elementtype": { "fqn": "projen.github.workflows.JobStep" }, "kind": "array" } } }, { "abstract": true, "docs": { "default": "- default image", "stability": "stable", "summary": "Container image to use for GitHub workflows." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 392 }, "name": "workflowContainerImage", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "- GitHub Actions", "stability": "stable", "summary": "The git identity to use in workflows." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 183 }, "name": "workflowGitIdentity", "optional": true, "type": { "fqn": "projen.github.GitIdentity" } }, { "abstract": true, "docs": { "default": "- same as `minNodeVersion`", "stability": "stable", "summary": "The node version to use in GitHub workflows." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 177 }, "name": "workflowNodeVersion", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Enable Node.js package cache in GitHub workflows." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 171 }, "name": "workflowPackageCache", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "[\"ubuntu-latest\"]", "stability": "stable", "summary": "Github Runner selection labels." }, "immutable": true, "locationInModule": { "filename": "src/projen-project-options.ts", "line": 386 }, "name": "workflowRunsOn", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } } ], "symbolId": "src/projen-project-options:ProjenProjectOptions" }, "schuettc.TypeScriptProject": { "assembly": "schuettc", "base": "projen.typescript.TypeScriptProject", "docs": { "custom": { "pjid": "ts" }, "stability": "stable" }, "fqn": "schuettc.TypeScriptProject", "initializer": { "docs": { "stability": "stable" }, "locationInModule": { "filename": "src/typescript-project.ts", "line": 19 }, "parameters": [ { "name": "options", "type": { "fqn": "schuettc.TypeScriptProjectOptions" } } ] }, "kind": "class", "locationInModule": { "filename": "src/typescript-project.ts", "line": 18 }, "name": "TypeScriptProject", "symbolId": "src/typescript-project:TypeScriptProject" }, "schuettc.TypeScriptProjectOptions": { "assembly": "schuettc", "datatype": true, "docs": { "stability": "stable", "summary": "TypeScriptProjectOptions." }, "fqn": "schuettc.TypeScriptProjectOptions", "kind": "interface", "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 7 }, "name": "TypeScriptProjectOptions", "properties": [ { "abstract": true, "docs": { "stability": "stable", "summary": "Author's name." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 675 }, "name": "authorName", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable" }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 854 }, "name": "repo", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "['feat', 'fix', 'chore', 'revert', 'docs', 'ci']", "stability": "stable", "summary": "Which conventional commit types are allowed to be used Types listed in `releasableCommitTypes` are always allowed." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 867 }, "name": "allowedCommitTypes", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } }, { "abstract": true, "docs": { "default": "true", "remarks": "This is normally only allowed for libraries. For apps, there's no meaning\nfor specifying these.", "stability": "stable", "summary": "Allow the project to include `peerDependencies` and `bundledDependencies`." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 688 }, "name": "allowLibraryDependencies", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "\"dist\"", "stability": "stable", "summary": "A directory which will contain build artifacts." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 311 }, "name": "artifactsDirectory", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Author's e-mail." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 680 }, "name": "authorEmail", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Is the author an organization." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 670 }, "name": "authorOrganization", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Author's URL / Website." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 665 }, "name": "authorUrl", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "- auto approve is disabled", "stability": "stable", "summary": "Enable and configure the 'auto approve' workflow." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 774 }, "name": "autoApproveOptions", "optional": true, "type": { "fqn": "projen.github.AutoApproveOptions" } }, { "abstract": true, "docs": { "default": "- true", "remarks": "Throw if set to true but `autoApproveOptions` are not defined.", "stability": "stable", "summary": "Automatically approve deps upgrade PRs, allowing them to be merged by mergify (if configued)." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 305 }, "name": "autoApproveUpgrades", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "true", "stability": "stable", "summary": "Automatically add all executables under the `bin` directory to your `package.json` file under the `bin` section." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 660 }, "name": "autoDetectBin", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- tokens will be used", "remarks": "Remember to install the app and to configure credentials.", "stability": "stable", "summary": "Use this app for workflow automation." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 873 }, "name": "automationAppName", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "true", "remarks": "Has no effect if `github.mergify`\nis set to false.", "stability": "stable", "summary": "Enable automatic merging on GitHub." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 768 }, "name": "autoMerge", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- see defaults in `AutoMergeOptions`", "remarks": "Has no effect if\n`github.mergify` or `autoMerge` is set to false.", "stability": "stable", "summary": "Configure options for automatic merging on GitHub." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 760 }, "name": "autoMergeOptions", "optional": true, "type": { "fqn": "projen.github.AutoMergeOptions" } }, { "abstract": true, "docs": { "remarks": "You can use this option to add/customize how binaries are represented in\nyour `package.json`, but unless `autoDetectBin` is `false`, every\nexecutable file under `bin` will automatically be added to this section.", "stability": "stable", "summary": "Binary programs vended with your module." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 654 }, "name": "bin", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "map" } } }, { "abstract": true, "docs": { "stability": "stable", "summary": "The email address to which issues should be reported." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 646 }, "name": "bugsEmail", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "The url to your project's issue tracker." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 641 }, "name": "bugsUrl", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "- true if not a subproject", "stability": "stable", "summary": "Define a GitHub workflow for building PRs." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 298 }, "name": "buildWorkflow", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "\"{ pullRequest: {}, workflowDispatch: {} }\"", "stability": "stable", "summary": "Build workflow triggers." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 292 }, "name": "buildWorkflowTriggers", "optional": true, "type": { "fqn": "projen.github.workflows.Triggers" } }, { "abstract": true, "docs": { "remarks": "These modules will be\nadded both to the `dependencies` section and `bundledDependencies` section of\nyour `package.json`.\n\nThe recommendation is to only specify the module name here (e.g.\n`express`). This will behave similar to `yarn add` or `npm install` in the\nsense that it will add the module as a dependency to your `package.json`\nfile with the latest version (`^`). You can specify semver requirements in\nthe same syntax passed to `npm i` or `yarn add` (e.g. `express@^2`) and\nthis will be what you `package.json` will eventually include.", "stability": "stable", "summary": "List of dependencies to bundle into this module." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 636 }, "name": "bundledDeps", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Options for `Bundler`." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 286 }, "name": "bundlerOptions", "optional": true, "type": { "fqn": "projen.javascript.BundlerOptions" } }, { "abstract": true, "docs": { "default": "- true, but false for subprojects", "stability": "stable", "summary": "Add a `clobber` task which resets the repo to origin." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 752 }, "name": "clobber", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- undefined", "remarks": "This is required if publishing packages to, or installing scoped packages from AWS CodeArtifact", "stability": "stable", "summary": "Options for npm packages using AWS CodeArtifact." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 621 }, "name": "codeArtifactOptions", "optional": true, "type": { "fqn": "projen.javascript.CodeArtifactOptions" } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v3 A secret is required for private repos. Configured with `@codeCovTokenSecret`." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 281 }, "name": "codeCov", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- if this option is not specified, only public repositories are supported", "stability": "stable", "summary": "Define the secret name for a specified https://codecov.io/ token A secret is required to send coverage for private repositories." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 275 }, "name": "codeCovTokenSecret", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "true", "stability": "stable", "summary": "Whether to commit the managed files by default." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 843 }, "name": "commitGenerated", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- defaults to the value of authorName or \"\" if `authorName` is undefined.", "stability": "stable", "summary": "License copyright owner." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 269 }, "name": "copyrightOwner", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "- current year", "stability": "stable", "summary": "The copyright years to put in the LICENSE file." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 263 }, "name": "copyrightPeriod", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "\"main\"", "stability": "stable", "summary": "The name of the main release branch." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 317 }, "name": "defaultReleaseBranch", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "false", "remarks": "Cannot be used in conjunction with `depsUpgrade`.", "stability": "stable", "summary": "Use dependabot to handle dependency upgrades." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 257 }, "name": "dependabot", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- default options", "stability": "stable", "summary": "Options for dependabot." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 250 }, "name": "dependabotOptions", "optional": true, "type": { "fqn": "projen.github.DependabotOptions" } }, { "abstract": true, "docs": { "custom": { "featured": "true" }, "default": "[]", "remarks": "The recommendation is to only specify the module name here (e.g.\n`express`). This will behave similar to `yarn add` or `npm install` in the\nsense that it will add the module as a dependency to your `package.json`\nfile with the latest version (`^`). You can specify semver requirements in\nthe same syntax passed to `npm i` or `yarn add` (e.g. `express@^2`) and\nthis will be what you `package.json` will eventually include.", "stability": "stable", "summary": "Runtime dependencies of this module." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 614 }, "name": "deps", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } }, { "abstract": true, "docs": { "default": "true", "remarks": "Cannot be used in conjunction with `dependabot`.", "stability": "stable", "summary": "Use github workflows to handle dependency upgrades." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 244 }, "name": "depsUpgrade", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- default options", "stability": "stable", "summary": "Options for `UpgradeDependencies`." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 237 }, "name": "depsUpgradeOptions", "optional": true, "type": { "fqn": "projen.javascript.UpgradeDependenciesOptions" } }, { "abstract": true, "docs": { "custom": { "featured": "true" }, "remarks": "It can be used when searching for packages in a package manager as well.\nSee https://classic.yarnpkg.com/en/docs/package-json/#toc-description", "stability": "stable", "summary": "The description is just a string that helps people understand the purpose of the package." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 601 }, "name": "description", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Add a VSCode development environment (used for GitHub Codespaces)." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 746 }, "name": "devContainer", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "custom": { "featured": "true" }, "default": "[]", "remarks": "These dependencies will only be\navailable in your build environment but will not be fetched when this\nmodule is consumed.\n\nThe recommendation is to only specify the module name here (e.g.\n`express`). This will behave similar to `yarn add` or `npm install` in the\nsense that it will add the module as a dependency to your `package.json`\nfile with the latest version (`^`). You can specify semver requirements in\nthe same syntax passed to `npm i` or `yarn add` (e.g. `express@^2`) and\nthis will be what you `package.json` will eventually include.", "stability": "stable", "summary": "Build dependencies for this module." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 593 }, "name": "devDeps", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Do not generate a `tsconfig.json` file (used by jsii projects since tsconfig.json is generated by the jsii compiler)." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 102 }, "name": "disableTsconfig", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Do not generate a `tsconfig.dev.json` file." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 96 }, "name": "disableTsconfigDev", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Docgen by Typedoc." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 90 }, "name": "docgen", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "\"docs\"", "stability": "stable", "summary": "Docs directory." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 84 }, "name": "docsDirectory", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "\"lib/index.js\"", "stability": "stable", "summary": "Module entrypoint (`main` in `package.json`). Set to an empty string to not include `main` in your package.json." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 576 }, "name": "entrypoint", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "- .d.ts file derived from the project's entrypoint (usually lib/index.d.ts)", "stability": "stable", "summary": "The .d.ts file that includes the type declarations for this module." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 78 }, "name": "entrypointTypes", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "true", "stability": "stable", "summary": "Setup eslint." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 72 }, "name": "eslint", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- opinionated default options", "stability": "stable", "summary": "Eslint options." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 66 }, "name": "eslintOptions", "optional": true, "type": { "fqn": "projen.javascript.EslintOptions" } }, { "abstract": true, "docs": { "default": "true", "remarks": "Enabled by default for root projects. Disabled for non-root projects.", "stability": "stable", "summary": "Enable GitHub integration." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 740 }, "name": "github", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- see GitHubOptions", "stability": "stable", "summary": "Options for GitHub integration." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 733 }, "name": "githubOptions", "optional": true, "type": { "fqn": "projen.github.GitHubOptions" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Additional entries to .gitignore." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 231 }, "name": "gitignore", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Configuration options for .gitignore file." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 837 }, "name": "gitIgnoreOptions", "optional": true, "type": { "fqn": "projen.IgnoreFileOptions" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Configuration options for git." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 832 }, "name": "gitOptions", "optional": true, "type": { "fqn": "projen.GitOptions" } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Add a Gitpod development environment." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 727 }, "name": "gitpod", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Package's Homepage / Website." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 569 }, "name": "homepage", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "true", "stability": "stable", "summary": "Setup jest unit tests." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 226 }, "name": "jest", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- default options", "stability": "stable", "summary": "Jest options." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 220 }, "name": "jestOptions", "optional": true, "type": { "fqn": "projen.javascript.JestOptions" } }, { "abstract": true, "docs": { "default": "\"latest\"", "stability": "stable", "summary": "Version requirement of `publib` which is used to publish modules to npm." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 447 }, "name": "jsiiReleaseVersion", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Keywords to include in `package.json`." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 564 }, "name": "keywords", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } }, { "abstract": true, "docs": { "default": "\"lib\"", "stability": "stable", "summary": "Typescript artifacts output directory." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 60 }, "name": "libdir", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "\"MIT\"", "remarks": "See https://github.com/projen/projen/tree/main/license-text for a list of supported licenses.\nUse the `licensed` option if you want to no license to be specified.", "stability": "stable", "summary": "License's SPDX identifier." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 559 }, "name": "license", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "true", "stability": "stable", "summary": "Indicates if a license should be added." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 551 }, "name": "licensed", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "{}", "stability": "stable", "summary": "Configure logging options such as verbosity." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 827 }, "name": "logging", "optional": true, "type": { "fqn": "projen.LoggerOptions" } }, { "abstract": true, "docs": { "default": "- Major version is not enforced.", "remarks": "If this is specified, we bump the latest version of this major version line.\nIf not specified, we bump the global latest version.", "stability": "stable", "summary": "Major version to release from the default branch." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 441 }, "name": "majorVersion", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "default": "- no max", "stability": "stable", "summary": "Minimum node.js version to require via `engines` (inclusive)." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 545 }, "name": "maxNodeVersion", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "- No minimum version is being enforced", "remarks": "This can be useful to set to 1, as breaking changes before the 1.x major\nrelease are not incrementing the major version number.\n\nCan not be set together with `majorVersion`.", "stability": "stable", "summary": "Minimal Major version to release." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 433 }, "name": "minMajorVersion", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "default": "- no \"engines\" specified", "stability": "stable", "summary": "Minimum Node.js version to require via package.json `engines` (inclusive)." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 539 }, "name": "minNodeVersion", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "true", "remarks": "This means\nthat any files synthesized by projen or e.g. test snapshots will always be up-to-date\nbefore a PR is merged.\n\nImplies that PR builds do not have anti-tamper checks.", "stability": "stable", "summary": "Automatically update files modified during builds to pull-request branches." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 214 }, "name": "mutableBuild", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "custom": { "featured": "true" }, "default": "$BASEDIR", "stability": "stable", "summary": "This is the name of your project." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 850 }, "name": "name", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "- for scoped packages (e.g. `foo@bar`), the default is\n`NpmAccess.RESTRICTED`, for non-scoped packages, the default is\n`NpmAccess.PUBLIC`.", "stability": "stable", "summary": "Access level of the npm package." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 533 }, "name": "npmAccess", "optional": true, "type": { "fqn": "projen.javascript.NpmAccess" } }, { "abstract": true, "docs": { "default": "\"latest\"", "remarks": "To set the npm dist-tag for release branches, set the `npmDistTag` property\nfor each branch.", "stability": "stable", "summary": "The npmDistTag to use when publishing from the default branch." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 423 }, "name": "npmDistTag", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "true", "stability": "stable", "summary": "Defines an .npmignore file. Normally this is only needed for libraries that are packaged as tarballs." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 203 }, "name": "npmignoreEnabled", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Configuration options for .npmignore file." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 197 }, "name": "npmIgnoreOptions", "optional": true, "type": { "fqn": "projen.IgnoreFileOptions" } }, { "abstract": true, "docs": { "default": "\"https://registry.npmjs.org\"", "remarks": "Must be a URL (e.g. start with \"https://\" or \"http://\")", "stability": "stable", "summary": "The base URL of the npm package registry." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 525 }, "name": "npmRegistryUrl", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "\"NPM_TOKEN\"", "stability": "stable", "summary": "GitHub secret which contains the NPM token to use when publishing packages." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 518 }, "name": "npmTokenSecret", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "\".\"", "remarks": "If this project has a parent, this directory is relative to the parent\ndirectory and it cannot be the same as the parent or any of it's other\nsub-projects.", "stability": "stable", "summary": "The root directory of the project. Relative to this directory, all files are synthesized." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 821 }, "name": "outdir", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "true", "stability": "stable", "summary": "Allow the repo owner to self approve PRs by putting a label on it." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 879 }, "name": "ownerCanSelfApprovePRs", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "true", "stability": "stable", "summary": "Defines a `package` task that will produce an npm tarball under the artifacts directory (e.g. `dist`)." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 192 }, "name": "package", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "NodePackageManager.YARN", "stability": "stable", "summary": "The Node Package Manager used to execute scripts." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 512 }, "name": "packageManager", "optional": true, "type": { "fqn": "projen.javascript.NodePackageManager" } }, { "abstract": true, "docs": { "custom": { "featured": "true" }, "default": "- defaults to project name", "stability": "stable", "summary": "The \"name\" in package.json." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 506 }, "name": "packageName", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "The parent project, if this project is part of a bigger project." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 810 }, "name": "parent", "optional": true, "type": { "fqn": "projen.Project" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Options for `peerDeps`." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 499 }, "name": "peerDependencyOptions", "optional": true, "type": { "fqn": "projen.javascript.PeerDependencyOptions" } }, { "abstract": true, "docs": { "default": "[]", "remarks": "Dependencies listed here are required to\nbe installed (and satisfied) by the _consumer_ of this library. Using peer\ndependencies allows you to ensure that only a single module of a certain\nlibrary exists in the `node_modules` tree of your consumers.\n\nNote that prior to npm@7, peer dependencies are _not_ automatically\ninstalled, which means that adding peer dependencies to a library will be a\nbreaking change for your customers.\n\nUnless `peerDependencyOptions.pinnedDevDependency` is disabled (it is\nenabled by default), projen will automatically add a dev dependency with a\npinned version for each peer dependency. This will ensure that you build &\ntest your module against the lowest peer version required.", "stability": "stable", "summary": "Peer dependencies for this module." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 494 }, "name": "peerDeps", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } }, { "abstract": true, "docs": { "default": "\"7\"", "stability": "stable", "summary": "The version of PNPM to use if using PNPM as a package manager." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 475 }, "name": "pnpmVersion", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "[]", "stability": "stable", "summary": "Steps to execute after build as part of the release workflow." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 415 }, "name": "postBuildSteps", "optional": true, "type": { "collection": { "elementtype": { "fqn": "projen.github.workflows.JobStep" }, "kind": "array" } } }, { "abstract": true, "docs": { "default": "- normal semantic versions", "stability": "stable", "summary": "Bump versions from the default branch as pre-releases (e.g. \"beta\", \"alpha\", \"pre\")." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 409 }, "name": "prerelease", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Setup prettier." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 186 }, "name": "prettier", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- default options", "stability": "stable", "summary": "Prettier options." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 180 }, "name": "prettierOptions", "optional": true, "type": { "fqn": "projen.javascript.PrettierOptions" } }, { "abstract": true, "docs": { "default": "\"npx projen\"", "remarks": "Can be used to customize in special environments.", "stability": "stable", "summary": "The shell command to use in order to run the projen CLI." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 805 }, "name": "projenCommand", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "- use a personal access token named PROJEN_GITHUB_TOKEN", "stability": "stable", "summary": "Choose a method of providing GitHub API access for projen workflows." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 721 }, "name": "projenCredentials", "optional": true, "type": { "fqn": "projen.github.GithubCredentials" } }, { "abstract": true, "docs": { "default": "true", "stability": "stable", "summary": "Indicates of \"projen\" should be installed as a devDependency." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 174 }, "name": "projenDevDependency", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- true if projenrcJson is false", "stability": "stable", "summary": "Generate (once) .projenrc.js (in JavaScript). Set to `false` in order to disable .projenrc.js generation." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 168 }, "name": "projenrcJs", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Generate (once) .projenrc.json (in JSON). Set to `false` in order to disable .projenrc.json generation." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 798 }, "name": "projenrcJson", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- default options", "stability": "stable", "summary": "Options for .projenrc.json." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 792 }, "name": "projenrcJsonOptions", "optional": true, "type": { "fqn": "projen.ProjenrcJsonOptions" } }, { "abstract": true, "docs": { "default": "- default options", "stability": "stable", "summary": "Options for .projenrc.js." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 162 }, "name": "projenrcJsOptions", "optional": true, "type": { "fqn": "projen.javascript.ProjenrcOptions" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Options for .projenrc.ts." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 54 }, "name": "projenrcTsOptions", "optional": true, "type": { "fqn": "projen.typescript.ProjenrcOptions" } }, { "abstract": true, "docs": { "default": "- Defaults to the latest version.", "stability": "stable", "summary": "Version of projen to install." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 156 }, "name": "projenVersion", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Instead of actually publishing to package managers, just print the publishing command." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 403 }, "name": "publishDryRun", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "false", "remarks": "Normally, publishing only happens within automated workflows. Enable this\nin order to create a publishing task for each publishing activity.", "stability": "stable", "summary": "Define publishing tasks that can be executed manually as well as workflows." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 397 }, "name": "publishTasks", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "true", "stability": "stable", "summary": "Include a GitHub pull request template." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 150 }, "name": "pullRequestTemplate", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- default content", "stability": "stable", "summary": "The contents of the pull request template." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 144 }, "name": "pullRequestTemplateContents", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } }, { "abstract": true, "docs": { "default": "- { filename: 'README.md', contents: '# replace this' }", "stability": "stable", "summary": "The README setup." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 715 }, "name": "readme", "optional": true, "type": { "fqn": "projen.SampleReadmeProps" } }, { "abstract": true, "docs": { "default": "['feat', 'fix', 'chore', 'revert']", "stability": "stable", "summary": "Which conventional commit types should be released." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 860 }, "name": "releasableCommitTypes", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Add release management to this project." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 138 }, "name": "release", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- no additional branches are used for release. you can use\n`addBranch()` to add additional branches.", "remarks": "A workflow will be created for each\nrelease branch which will publish releases from commits in this branch.\nEach release branch _must_ be assigned a major version number which is used\nto enforce that versions published from that branch always use that major\nversion. If multiple branches are used, the `majorVersion` field must also\nbe provided for the default branch.", "stability": "stable", "summary": "Defines additional release branches." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 389 }, "name": "releaseBranches", "optional": true, "type": { "collection": { "elementtype": { "fqn": "projen.release.BranchOptions" }, "kind": "map" } } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Create a github issue on every failed publishing task." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 376 }, "name": "releaseFailureIssue", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "\"failed-release\"", "remarks": "Only applies if `releaseFailureIssue` is true.", "stability": "stable", "summary": "The label to apply to issues indicating publish failures." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 370 }, "name": "releaseFailureIssueLabel", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "\"v\"", "remarks": "Useful if you are releasing on multiple branches with overlapping version numbers.\nNote: this prefix is used to detect the latest tagged version\nwhen bumping, so if you change this on a project with an existing version\nhistory, you may need to manually tag your latest release\nwith the new prefix.", "stability": "stable", "summary": "Automatically add the given prefix to release tags." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 363 }, "name": "releaseTagPrefix", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Automatically release to npm when new versions are introduced." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 132 }, "name": "releaseToNpm", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- Continuous releases (`ReleaseTrigger.continuous()`)", "stability": "stable", "summary": "The release trigger to use." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 353 }, "name": "releaseTrigger", "optional": true, "type": { "fqn": "projen.release.ReleaseTrigger" } }, { "abstract": true, "docs": { "default": "\"Release\"", "stability": "stable", "summary": "The name of the default release workflow." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 347 }, "name": "releaseWorkflowName", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "A set of workflow steps to execute in order to setup the workflow container." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 341 }, "name": "releaseWorkflowSetupSteps", "optional": true, "type": { "collection": { "elementtype": { "fqn": "projen.github.workflows.JobStep" }, "kind": "array" } } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Use renovatebot to handle dependency upgrades." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 786 }, "name": "renovatebot", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- default options", "stability": "stable", "summary": "Options for renovatebot." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 780 }, "name": "renovatebotOptions", "optional": true, "type": { "fqn": "projen.RenovatebotOptions" } }, { "abstract": true, "docs": { "remarks": "See https://classic.yarnpkg.com/en/docs/package-json/#toc-repository", "stability": "stable", "summary": "The repository is the location where the actual code for your package lives." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 469 }, "name": "repository", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "If the package.json for your package is not in the root directory (for example if it is part of a monorepo), you can specify the directory in which it lives." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 463 }, "name": "repositoryDirectory", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "- fetch all scoped packages from the public npm registry", "stability": "stable", "summary": "Options for privately hosted scoped packages." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 458 }, "name": "scopedPackagesOptions", "optional": true, "type": { "collection": { "elementtype": { "fqn": "projen.javascript.ScopedPackagesOptions" }, "kind": "array" } } }, { "abstract": true, "docs": { "default": "\"src\"", "stability": "stable", "summary": "Typescript sources directory." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 49 }, "name": "srcdir", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Package's Stability." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 452 }, "name": "stability", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "false", "remarks": "See `staleOptions` for options.", "stability": "stable", "summary": "Auto-close of stale issues and pull request." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 709 }, "name": "stale", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "- see defaults in `StaleOptions`", "remarks": "To disable set `stale` to `false`.", "stability": "stable", "summary": "Auto-close stale issues and pull requests." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 702 }, "name": "staleOptions", "optional": true, "type": { "fqn": "projen.github.StaleOptions" } }, { "abstract": true, "docs": { "default": "\"test\"", "remarks": "Tests files should be named `xxx.test.ts`.\nIf this directory is under `srcdir` (e.g. `src/test`, `src/__tests__`),\nthen tests are going to be compiled into `lib/` and executed as javascript.\nIf the test directory is outside of `src`, then we configure jest to\ncompile the code in-memory.", "stability": "stable", "summary": "Jest tests directory." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 43 }, "name": "testdir", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "- default options", "stability": "stable", "summary": "Custom TSConfig." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 33 }, "name": "tsconfig", "optional": true, "type": { "fqn": "projen.javascript.TypescriptConfigOptions" } }, { "abstract": true, "docs": { "default": "- use the production tsconfig options", "stability": "stable", "summary": "Custom tsconfig options for the development tsconfig.json file (used for testing)." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 27 }, "name": "tsconfigDev", "optional": true, "type": { "fqn": "projen.javascript.TypescriptConfigOptions" } }, { "abstract": true, "docs": { "default": "\"tsconfig.dev.json\"", "stability": "stable", "summary": "The name of the development tsconfig.json file." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 21 }, "name": "tsconfigDevFile", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "\"latest\"", "remarks": "NOTE: Typescript is not semantically versioned and should remain on the\nsame minor, so we recommend using a `~` dependency (e.g. `~1.2.3`).", "stability": "stable", "summary": "TypeScript version to use." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 15 }, "name": "typescriptVersion", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "UpgradeDependenciesSchedule.WEEKLY", "stability": "stable" }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 884 }, "name": "upgradesSchedule", "optional": true, "type": { "fqn": "projen.javascript.UpgradeDependenciesSchedule" } }, { "abstract": true, "docs": { "default": "- standard configuration applicable for GitHub repositories", "remarks": "Given values either append to default configuration or overwrite values in it.", "stability": "stable", "summary": "Custom configuration used when creating changelog with standard-version package." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 336 }, "name": "versionrcOptions", "optional": true, "type": { "collection": { "elementtype": { "primitive": "any" }, "kind": "map" } } }, { "abstract": true, "docs": { "default": "true", "remarks": "Enabled by default for root projects. Disabled for non-root projects.", "stability": "stable", "summary": "Enable VSCode integration." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 695 }, "name": "vscode", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "\"yarn install --frozen-lockfile && yarn projen\"", "stability": "stable", "summary": "Workflow steps to use in order to bootstrap this repo." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 126 }, "name": "workflowBootstrapSteps", "optional": true, "type": { "collection": { "elementtype": { "fqn": "projen.github.workflows.JobStep" }, "kind": "array" } } }, { "abstract": true, "docs": { "default": "- default image", "stability": "stable", "summary": "Container image to use for GitHub workflows." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 329 }, "name": "workflowContainerImage", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "- GitHub Actions", "stability": "stable", "summary": "The git identity to use in workflows." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 120 }, "name": "workflowGitIdentity", "optional": true, "type": { "fqn": "projen.github.GitIdentity" } }, { "abstract": true, "docs": { "default": "- same as `minNodeVersion`", "stability": "stable", "summary": "The node version to use in GitHub workflows." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 114 }, "name": "workflowNodeVersion", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Enable Node.js package cache in GitHub workflows." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 108 }, "name": "workflowPackageCache", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "[\"ubuntu-latest\"]", "stability": "stable", "summary": "Github Runner selection labels." }, "immutable": true, "locationInModule": { "filename": "src/typescript-project-options.ts", "line": 323 }, "name": "workflowRunsOn", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } } ], "symbolId": "src/typescript-project-options:TypeScriptProjectOptions" } }, "version": "0.1.7", "fingerprint": "SxS51E0ebHsYgG1oocV20Wq6hTV7LOvrdDIm7l0NtBw=" }