{"id":13452575,"url":"https://github.com/danger/danger-js","last_synced_at":"2025-05-13T15:02:46.359Z","repository":{"id":38803660,"uuid":"66146807","full_name":"danger/danger-js","owner":"danger","description":"⚠️ Stop saying \"you forgot to …\" in code review","archived":false,"fork":false,"pushed_at":"2025-04-16T06:58:48.000Z","size":9395,"stargazers_count":5337,"open_issues_count":166,"forks_count":375,"subscribers_count":26,"default_branch":"main","last_synced_at":"2025-05-05T22:16:53.210Z","etag":null,"topics":["ci","circle","code-review","danger","danger-js","github-actions","jenkins","travis"],"latest_commit_sha":null,"homepage":"http://danger.systems/js/","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/danger.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"github":["orta"]}},"created_at":"2016-08-20T12:57:06.000Z","updated_at":"2025-05-05T15:39:42.000Z","dependencies_parsed_at":"2022-07-13T18:21:05.209Z","dependency_job_id":"991e9510-b81f-4488-a1d0-cf4c2cee9090","html_url":"https://github.com/danger/danger-js","commit_stats":{"total_commits":2167,"total_committers":253,"mean_commits":8.565217391304348,"dds":0.5085371481310568,"last_synced_commit":"491bb0b401148366cbe0e4d2bc9705fea521a647"},"previous_names":[],"tags_count":244,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/danger%2Fdanger-js","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/danger%2Fdanger-js/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/danger%2Fdanger-js/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/danger%2Fdanger-js/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/danger","download_url":"https://codeload.github.com/danger/danger-js/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252795878,"owners_count":21805453,"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","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":["ci","circle","code-review","danger","danger-js","github-actions","jenkins","travis"],"created_at":"2024-07-31T07:01:27.908Z","updated_at":"2025-05-13T15:02:46.300Z","avatar_url":"https://github.com/danger.png","language":"TypeScript","readme":"\u003cp align=\"center\"\u003e\n  \u003cimg src=\"http://danger.systems/images/js/danger-logo-hero-cachable@2x.png\" width=250 /\u003e\u003c/br\u003e\n  Formalize your Pull Request etiquette.\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n    \u003ca href=\"#what-is-danger-js\"\u003eWhat is Danger JS?\u003c/a\u003e \u0026bull;\n    \u003ca href=\"VISION.md\"\u003eVision\u003c/a\u003e \u0026bull;\n    \u003ca href=\"#this-thing-is-broken-i-should-help-improve-it\"\u003eHelping Out\u003c/a\u003e \u0026bull;\n    \u003ca href=\"http://danger.systems/js/usage/extending-danger.html\"\u003ePlugin Development\u003c/a\u003e\n\u003c/p\u003e\n\n## What is Danger JS?\n\nDanger runs after your CI, automating your team's conventions surrounding code review.\n\nThis provides another logical step in your process, through which Danger can help lint your rote tasks in daily code\nreview.\n\nYou can use Danger to codify your team's norms, leaving humans to think about harder problems.\n\nDanger JS works with GitHub, BitBucket Server, BitBucket Cloud for code review, then with: Travis CI, GitLab CI,\nSemaphore, Circle CI, GitHub Actions, Jenkins, Docker Cloud, Bamboo, Bitrise, surf-build, Codeship, Drone, Buildkite,\nNevercode, buddybuild, Buddy.works, TeamCity, Visual Studio Team Services, Screwdriver, Concourse, Netlify, CodeBuild,\nCodefresh, AppCenter, BitBucket Pipelines, Cirrus CI, Codemagic or Xcode Cloud.\n\n[![npm](https://img.shields.io/npm/v/danger.svg)](https://www.npmjs.com/package/danger)\n[![Build Status](https://travis-ci.org/danger/danger-js.svg?branch=main)](https://travis-ci.org/danger/danger-js)\n[![Build Status](https://ci.appveyor.com/api/projects/status/ep5hgeox3lbc5c7f?svg=true)](https://ci.appveyor.com/project/orta/danger-js/branch/main)\n\n## For example?\n\nYou can:\n\n- Enforce CHANGELOGs\n- Enforce links to Trello/JIRA in PR/MR bodies\n- Enforce using descriptive labels\n- Look out for common anti-patterns\n- Highlight interesting build artifacts\n- Give warnings when specific files change\n\nDanger provides the glue to let _you_ build out the rules specific to your team's culture, offering useful metadata and\na comprehensive plugin system to share common issues.\n\n## Getting Started\n\nAlright. So, actually, you may be in the wrong place. From here on in, this README is going to be for people who are\ninterested in working on and improving on Danger JS.\n\nWe keep all of the end-user documentation at \u003chttp://danger.systems/js\u003e.\n\nSome quick links to get you started:\n\n- [Getting Started](http://danger.systems/js/guides/getting_started.html)\n- [Guides Index](http://danger.systems/js/guides.html)\n- [DSL Reference](http://danger.systems/js/reference.html)\n\n## This thing is broken, I should help improve it!\n\nAwesommmmee. Everything you need is down below. You can also refer to [CONTRIBUTING](CONTRIBUTING.md) file where you'll\nfind the same information listed below.\n\n```sh\ngit clone https://github.com/danger/danger-js.git\ncd danger-js\n\n# if you don't have yarn installed\nnpm install -g yarn\n\nyarn install\n```\n\nYou can then verify your install by running the tests, and the linters:\n\n```sh\nyarn test\nyarn lint\n```\n\nThe fixers for both tslint and prettier will be applied when you commit, and on a push your code will be verified that\nit compiles.\n\nYou can run your dev copy of danger against a PR by running:\n\n```sh\nyarn build; node --inspect distribution/commands/danger-pr.js https://github.com/danger/danger-js/pull/817\n```\n\n### How does Danger JS work?\n\nCheck the [architecture doc](https://github.com/danger/danger-js/blob/main/docs/architecture.md).\n\n### What is the TODO?\n\nCheck the issues, I try and keep my short term perspective there. Long term is in the [VISION.md](VISION.md).\n\n### Releasing a new version of Danger\n\nFollowing [this commit](https://github.com/danger/danger-js/commit/a26ac3b3bd4f002acd37f6a363c8e74c9d5039ab) as a model:\n\n- Checkout the `main` branch. Ensure your working tree is clean, and make sure you have the latest changes by running\n  `git pull; yarn`.\n- Publish - `npm run release -- patch --ci`.\n- This will trigger a CI run which updates homebrew for the native builds\n\n:ship:\n\n## License, Contributor's Guidelines and Code of Conduct\n\nWe try to keep as much discussion as possible in GitHub issues, but also have a pretty inactive Slack --- if you'd like\nan invite, ping [@Orta](https://twitter.com/orta/) a DM on Twitter with your email. It's mostly interesting if you want\nto stay on top of Danger without all the emails from GitHub.\n\n\u003e This project is open source under the MIT license, which means you have full access to the source code and can modify\n\u003e it to fit your own needs but don't have access to deploy.\n\u003e\n\u003e This project subscribes to the [Moya Contributors Guidelines](https://github.com/Moya/contributors) which TLDR: means\n\u003e we give out push access easily and often.\n\u003e\n\u003e Contributors subscribe to the [Contributor Code of Conduct](http://contributor-covenant.org/version/1/3/0/) based on\n\u003e the [Contributor Covenant](http://contributor-covenant.org) version 1.3.0.\n\n[emiss]: https://github.com/artsy/emission/blob/master/dangerfile.ts\n[danger-js]: https://github.com/danger/danger-js/blob/main/dangerfile.ts\n[meta]: https://github.com/artsy/metaphysics/blob/master/dangerfile.js\n[fbj]: https://github.com/facebook/jest/blob/master/dangerfile.js\n[sc]: https://github.com/styled-components/styled-components/blob/master/dangerfile.js\n[rxjs]: https://github.com/ReactiveX/rxjs/blob/master/dangerfile.js\n[setup]: http://danger.systems/guides/getting_started.html#creating-a-bot-account-for-danger-to-use\n[jest]: https://github.com/facebook/jest\n","funding_links":["https://github.com/sponsors/orta"],"categories":["TypeScript","Linting","*.js","jenkins","Testing Automation"],"sub_categories":["Kubernetes testing","Node","PR Automation"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdanger%2Fdanger-js","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdanger%2Fdanger-js","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdanger%2Fdanger-js/lists"}