{"id":19176894,"url":"https://github.com/oasisdigital/angular-stress-test","last_synced_at":"2025-09-10T17:47:17.242Z","repository":{"id":57179170,"uuid":"59971480","full_name":"OasisDigital/angular-stress-test","owner":"OasisDigital","description":"Generate an Angular application with N modules and M components","archived":false,"fork":false,"pushed_at":"2020-11-22T15:19:52.000Z","size":24,"stargazers_count":12,"open_issues_count":1,"forks_count":3,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-08-28T22:00:48.799Z","etag":null,"topics":["angular"],"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/OasisDigital.png","metadata":{"files":{"readme":"README.md","changelog":null,"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":"2016-05-30T01:17:11.000Z","updated_at":"2023-04-13T09:26:32.000Z","dependencies_parsed_at":"2022-09-14T03:30:49.670Z","dependency_job_id":null,"html_url":"https://github.com/OasisDigital/angular-stress-test","commit_stats":null,"previous_names":["oasisdigital/angular2-stress-test"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/OasisDigital/angular-stress-test","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OasisDigital%2Fangular-stress-test","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OasisDigital%2Fangular-stress-test/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OasisDigital%2Fangular-stress-test/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OasisDigital%2Fangular-stress-test/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/OasisDigital","download_url":"https://codeload.github.com/OasisDigital/angular-stress-test/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OasisDigital%2Fangular-stress-test/sbom","scorecard":{"id":103929,"data":{"date":"2025-08-11","repo":{"name":"github.com/OasisDigital/angular-stress-test","commit":"715d6f0168f114e40e27a93828c9791e1794d906"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3,"checks":[{"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":"Code-Review","score":0,"reason":"Found 0/15 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":"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":"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":"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":"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":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"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":"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":"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":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"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":10,"reason":"0 existing vulnerabilities detected","details":null,"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-15T10:44:10.477Z","repository_id":57179170,"created_at":"2025-08-15T10:44:10.477Z","updated_at":"2025-08-15T10:44:10.477Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274497808,"owners_count":25296690,"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-09-10T02:00:12.551Z","response_time":83,"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"],"created_at":"2024-11-09T10:31:00.242Z","updated_at":"2025-09-10T17:47:17.134Z","avatar_url":"https://github.com/OasisDigital.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# angular-stress-test\n\nThis program generates an Angular application with a configurable number of\ncomponents. The components are nested in a binary tree shape. The program only\ngenerates the actual components, in TypeScript form.\n\nEach component has two fields; one Input and another locally set. As the\ncomponents use each other, these fields and bindings are used also.\n\nThe components are spread across an configurable number of modules.\n\nOptional, for Bazel users: BAZEL.build files can be generated in a form\ncompatible with the Bazel build setup in the rules_nodejs example.\n\n## Stress Testing Your Build Tooling\n\nOptionally, the generated components can be made different on each run, by\ninserting a meaningless random value. This is useful for stress-testing build\ntooling - you can this generator in a loop like so (in Bash):\n\n```\nfor i in `seq 1 1000`; do angular-stress-test 10 75 -r ; sleep 5 ; done\n```\n\nBy adjusting the delay (in second) and number of components generated, you can\n\"stress test\" any build tool which is watching the files and re-building. While\nsuch a thing is running, keep an eye on your build tool's CPU and RAM use.\n\n## Installation\n\n```\nnpm install -g angular-stress-test\n```\n\n## Usage\n\n```\ncd to-a-typical-angular-app\ncd src/app\nangular-stress-test 7 42\n```\n\nThis will generate an application with 7 modules and 42 components spread\nacross those modules. They will be nested in a \"binary tree\" shape, with a bit\nof indentation to make this clear on the screen.\n\nThe output is compatible with Angular CLI; you can use CLI to\ngeneration an application, then populate it using this tool, and it should run\nwithout any further change.\n\nYou can also try much larger numbers, to see how well build tooling works with\nan Angular program with more numerous modules and components.\n\n## Bazel - Experimental\n\nBy default, the generated code is ready to use with Angular CLI, or with other\ntypical build tooling that has similar requirements.\n\nThere is an experimental option \"--bazel\", which additionally generates\nBUILD.bazel files, so that this can also be used the stress test the upcoming\nBazel base to build tooling. This purely generates additional files; the\nTypeScript and HTML files are unaffected.\n\nIf you don't recognize the word Bazel, don't worry, just ignore this.\n\n## Why?\n\nThe purpose of this is to make it possible to \"stress test\" how well development\n(IDE and build tooling) handle applications consisting of highly numerous source\ncode files and components. It can also be used to stress Angular itself, under\nsimilar conditions.\n\n## Who?\n\nKyle Cordes    https://kylecordes.com/\n\nOasis Digital  https://oasisdigital.com/\n\nCopyright 2016-2020\n\nMIT License\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Foasisdigital%2Fangular-stress-test","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Foasisdigital%2Fangular-stress-test","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Foasisdigital%2Fangular-stress-test/lists"}