{"id":31746216,"url":"https://github.com/da-mkay/ng-builder-typescript","last_synced_at":"2025-10-09T13:02:20.172Z","repository":{"id":57105333,"uuid":"343667396","full_name":"da-mkay/ng-builder-typescript","owner":"da-mkay","description":"builders and schematics for the Angular CLI to build node apps using typescript compiler","archived":false,"fork":false,"pushed_at":"2025-07-03T08:12:09.000Z","size":596,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-09-09T01:25:55.813Z","etag":null,"topics":["angular","builder","builders","schematic","schematics","tsc","tsconfig","typescript"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/da-mkay.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-03-02T06:21:10.000Z","updated_at":"2025-07-03T08:17:07.000Z","dependencies_parsed_at":"2022-08-21T03:00:34.641Z","dependency_job_id":null,"html_url":"https://github.com/da-mkay/ng-builder-typescript","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"purl":"pkg:github/da-mkay/ng-builder-typescript","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/da-mkay%2Fng-builder-typescript","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/da-mkay%2Fng-builder-typescript/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/da-mkay%2Fng-builder-typescript/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/da-mkay%2Fng-builder-typescript/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/da-mkay","download_url":"https://codeload.github.com/da-mkay/ng-builder-typescript/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/da-mkay%2Fng-builder-typescript/sbom","scorecard":{"id":316018,"data":{"date":"2025-08-11","repo":{"name":"github.com/da-mkay/ng-builder-typescript","commit":"cdf15da3c9bd42660e25614d8306901bdc19243e"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3.3,"checks":[{"name":"Token-Permissions","score":-1,"reason":"No tokens found","details":null,"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Maintained","score":3,"reason":"4 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 3","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"SAST","score":0,"reason":"no SAST tool detected","details":["Warn: no pull requests merged into dev branch"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Code-Review","score":0,"reason":"Found 0/30 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Dangerous-Workflow","score":-1,"reason":"no workflows found","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Pinned-Dependencies","score":-1,"reason":"no dependencies found","details":null,"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Vulnerabilities","score":9,"reason":"1 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-52f5-9888-hmc6"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-18T00:12:01.238Z","repository_id":57105333,"created_at":"2025-08-18T00:12:01.238Z","updated_at":"2025-08-18T00:12:01.238Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279001424,"owners_count":26083079,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-09T02:00:07.460Z","response_time":59,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["angular","builder","builders","schematic","schematics","tsc","tsconfig","typescript"],"created_at":"2025-10-09T13:01:09.556Z","updated_at":"2025-10-09T13:02:20.164Z","avatar_url":"https://github.com/da-mkay.png","language":"TypeScript","funding_links":[],"categories":["Angular"],"sub_categories":["Builders"],"readme":"# @da-mkay/ng-builder-typescript\n\nA builder for the Angular CLI to build Node.js apps using the typescript compiler tsc (no webpack or any other bundler used).\n\n## Versions\n\nThis version of @da-mkay/ng-builder-typescript requires Angular 19. Use the tag `ng19` when installing this version, like so:\\\n`ng add @da-mkay/ng-builder-typescript@ng19`\n\nFor other Angular versions take a look at the table below or at the [Versions page](https://www.npmjs.com/package/@da-mkay/ng-builder-typescript?activeTab=versions).\n| Angular Version | Tag for @da-mkay/ng-builder-typescript |\n| --------------- | ---------------------------------------|\n| Angular 19      | ng19                                   |\n| Angular 18      | ng18                                   |\n| Angular 17      | ng17                                   |\n| Angular 16      | ng16                                   |\n| Angular 15      | ng15                                   |\n| Angular 14      | ng14                                   |\n| Angular 13      | ng13                                   |\n| Angular 12      | ng12                                   |\n| Angular 11      | ng11                                   |\n| Angular 10      | ng10                                   |\n| Angular 9       | ng9                                    |\n| Angular 8       | ng8                                    |\n\n## Table of Contents\n\n-   [Start project from scratch](#start-project-from-scratch)\n-   [Builder options](#builder-options)\n    -   [Builder: build](#builder-build)\n    -   [Builder: serve](#builder-serve)\n-   [Changelog](#changelog)\n\n## Start project from scratch\n\nFirst create a new empty workspace:\n\n```\n$ ng new workspace --create-application=false\n$ cd workspace\n```\n\nThen install the builder:\n\n```\n$ ng add @da-mkay/ng-builder-typescript@ng19\n```\n(Using the tag `ng19`, the Angular 19 compatible version will be installed)\n\nFinally create a new Node.js/typescript project:\n\n```\n$ ng g @da-mkay/ng-builder-typescript:app\n```\n\nYou will be prompted for the project name. In the following examples `PROJECT` is used for the project name and must be replaced in your case accordingly.\n\nTo compile the project run:\n\n```\n$ ng build PROJECT\n```\n\nBy default, the compiled code is written to the `dist/` folder. You can change that by adjusting the `outputPath` option of the project's `build` target.\n\nTo compile the project each time the code is changed run:\n\n```\n$ ng build PROJECT --watch\n```\n\nOf course, you can also configure a target or configuration in your angular.json and set the `watch` option to `true`.\n\nTo compile the project and run the built project in a Node.js process each time the code is changed:\n\n```\n$ ng serve PROJECT\n```\n\n## Builder options\n\n### Builder: build\n\n**outputPath**: `string`\\\nTarget folder for the built app (relative to the workspace root). Will override `compilerOptions.outDir` setting of tsconfig.\n\n**tsConfig**: `string`\\\nPath to the tsconfig file to use (relative to the workspace root).\n\n**watch**: `boolean`\\\n(default: `false`)\\\nWhether to watch source files for changes and recompile.\n\n**cleanOutputPath**: `boolean`\\\n(default: `true`)\\\nWhether to clean ouputPath before building app.\n\n**assets**: `{ input: string, glob: string, output: string, ignore?: string[] }[]`\\\nFiles to copy to the `outputPath`. Each asset object has the following properties:\n\n-   `input`: a path relative to the workspace root\n-   `glob`: a glob relative to `input`\n-   `output`: a path relative to `outputPath`\n-   `ignore`: an optional array of globs relative to `input`\n\nIn watch mode (`watch` set to `true`) the asset `input` folders will be watched for changes, i.e. added or modified files. On each change the updated file will be copied.\n\n**fileReplacements**: `{ replace: string, with: string }[]`\\\nReplace files during compilation. Each array item is an object having the following properties:\n\n-   `replace`: A file path relative to the workspace root that should be replaced.\n-   `with`: A file path relative to the workspace root that should replace the path specified with `replace`.\n\n### Builder: serve\n\n**buildTarget**: `string`\\\n(required)\\\nThe build target that uses @da-mkay/ng-builder-typescript builder. It will be started in watch mode. Each time the build target finished compilation successfully, a Node.js process is started that runs the compiled `main` file.\\\nThis options must be a string using the format 'project:build-target[:config]'.\n\n**main**: `string`\\\n(required)\\\nThe path of the main file relative to the build target's `outputPath` that will be run using Node.js.\n\n**nodeBin**: `string`\\\nThe path to the Node.js binary to use. If none is specified the path of the currently running Node.js process is used.\n\n**cwd**: `string`\\\nThe cwd (current working directory) to use for the spawned Node.js process. If none is specified the build target's `outputPath` is used.\n\n**args**: `string[]`\\\nArguments to pass to the spawned Node.js process.\n\n## Changelog\n\nCheck out [changelog on Github](https://github.com/da-mkay/ng-builder-typescript/blob/main/CHANGELOG.md).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fda-mkay%2Fng-builder-typescript","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fda-mkay%2Fng-builder-typescript","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fda-mkay%2Fng-builder-typescript/lists"}