awesome-danger
An awesome list of all things Danger
What is Danger?
Danger runs after your CI, automating your team's conventions surrounding code review.
This provides another logical step in your process, through this Danger can help lint your rote tasks in daily code review.
You can use Danger to codify your teams norms, leaving humans to think about harder problems.
Plugins
Ruby (danger)
- danger-ruby-swiftlint - A Danger plugin for SwiftLint.
- danger-xcode_summary - A Danger plugin showing all build errors, warnings and unit tests results from xcodebuild.
- danger-xcov - Danger plugin to validate the code coverage of the files changed in a pull request.
- danger-mention - Danger plugin to automatically mention potential reviewers on pull requests.
- danger-xcprofiler - Danger plugin for asserting Swift compilation time.
- danger-prose - Danger plugin to lint your blog posts with proselint.
- danger-junit - Lets you report your test suite problems back to the PR elegantly.
- danger-commit_lint - Use Danger to lint your commit messages.
- danger-code_style_validation - Danger plugin for code style validation based on clang-format.
- danger-rubocop - Danger plugin for Rubocop.
- danger-ktlint - A Danger Plugin to lint kotlin files using ktlint command line interface.
- danger-kotlin_detekt - Detekt files of a gradle based project, using Detekt tool.
- danger-android_lint - A Danger plugin for Android Lint.
- danger-changelog - A plugin that is OCD about your CHANGELOG format.
- danger-lgtm - Let Danger say LGTM!
- Danger-Slather - Danger plugin for Slather framework.
- danger-pronto - A Danger plugin to lint files through Pronto.
- danger-xcodebuild - Exposes warnings, errors and test results.
- danger-synx - A Danger plugin for Synx.
- danger-clorox - A Danger plugin for Clorox.
- danger-the_coding_love - Danger plugin that prints markdown containing a random post from thecodinglove.com
- danger-pep8 - A Danger plugin for Python's PEP 8.
- danger-checkstyle_format - Danger plugin for checkstyle formatted xml file.
- danger-findbugs - Danger plugin for FindBugs formatted XML file.
- danger-spotbugs - Danger plugin for SpotBugs formatted XML file.
- danger-pmd - Danger plugin for PMD formatted XML file.
- danger-missed_localizable_strings - A Danger plugin to remind developers to localize strings.
- danger-todoist - Danger plugin to look for todo/fixme comments in pull requests.
- danger-ios_logs - Danger plugin to detect any NSLog/print entries left in the code.
- danger-hlint - A Danger plugin for Hlint.
- danger-eslint - A Danger plugin for linting javascript with eslint.
- danger-jira - Danger plugin to link JIRA issues in a pull request.
- danger-ruby-swiftformat - A danger plugin to check Swift formatting using SwiftFormat.
- danger-vale - Vale plugin for Danger.
- danger-slack - Post a notification to slack in a Dangerfile.
- danger-review_requests - Danger plugin to request a review in pull requests.
- danger-brakeman - A Danger plugin for Brakeman.
- danger-go - A Danger plugin for Golang.
- danger-rubyc - Danger plugin to validate syntax for Ruby files.
- danger-yamlint - A no-dependency Danger plugin to lint YAML files and fixtures.
- danger-periphery - A Danger plugin to detect unused codes using Periphery.
- danger-danger_plugin_lint - A Danger plugin to lint a danger plugin.
- danger-mailmap - A Danger plugin to check if .mailmap has a canonical name of author and committer.
- danger-chikuwa - A Danger Plugin for reporting Android build errors and warnings.
TypeScript (danger-js)
- danger-plugin-flow - Ensure all JS files that get touched in a PR are flow typed.
- danger-plugin-labels - Let any contributor add labels to their PRs and issues.
- danger-plugin-yarn - Provides dependency information on dependency changes in a PR *
- danger-plugin-jest - Danger plugin for Jest.
- danger-plugin-spellcheck - Spell checks .md files in a PR using node-markdown-spellcheck.
- danger-plugin-jira-issue - Danger plugin to link JIRA issue in pull request.
- danger-plugin-istanbul-coverage - Danger.js plugin for monitoring code coverage on changed files.
- danger-plugin-tslint - Danger plugin for TSLint.
- dangerjs-plugin - Taqtile Danger-js Plugin.
- danger-plugin-mentor - A Danger plugin to level up with each pull request.
- danger-plugin-eslint - Eslint your code with Danger.
- danger-plugin-textlint - Danger plugin for textlint.
- danger-plugin-xcode-report - Add your Xcode test results to Danger.
- danger-plugin-slack - DangerJS plugin to send report & message to Slack.
- danger-plugin-typetalk - DangerJS plugin to send report & message to Typetalk.
- danger-plugin-no-test-shortcuts - Danger plugin to prevent merging test shortcuts (.only and .skip).
- danger-plugin-lint-report - A Danger Plugin to parse lint reports (checkstyle, Android lint) and post pull request comments.
- danger-plugin-pr-hygiene - A Danger plugin for enforcing good PR hygiene.
Swift (danger-swift)
- danger-swiftlint - Automated Swift linting on pull requests.
- LGTMKit - Get LGTM image from lgtm.in, written by swift.
- danger-xiblint - [WIP] Xiblint plugin for Danger Swift
- danger-iblinter - [WIP] Automated IB linting on pull requests.
- danger-swift-xcodesummary - Adds build errors, warnings and unit tests results generated from xcodebuild to your Danger report
- danger-swift-coverage - Show the coverage of the modified/created files
- DangerSwiftHammer - A handy plugin to extend your DangerDSL abilities, like getting git diff patch for a file
- danger-swift-shoki - A danger-swift plug-in to manage/post danger checking reports with markdown style
- danger-swift-eda - A danger-swift plug-in to check if the PR matches a specific workflow (e.g. Git-Flow)
- danger-swift-commit-lint - A
danger-swift
commit linter - danger-swift-jira - Show Jira issue on the pull request
- DangerSwiftJUnit - Parses JUnit XML files and reports your test suite problems back to the PR.
- DangerSwiftPeriphery - A danger-swift plugin to detect unused codes using Periphery.
- danger-swift-kantoku - A danger-swift plug-in to parse your build result from .xcresult bundle instead of xcpretty-json-formatter, so you can rely on fewer Gem dependencies
Kotlin (danger-kotlin)
- danger-kotlin-android-lint-plugin - Show the android lint errors
- danger-kotlin-detekt - Process outputs of detekt tool
- danger-detekt-kotlin - Parse and report detekt outputs in customizable manner
- danger-kotlin-commit-lint - Lint the commit messages
- danger-kotlin-junit - Process junit reports
- danger-kotlin-jira - Collect and display mentioned JIRA issues as a hyperlinked Danger message
- danger-kotlin-jacoco - Process JaCoCo code coverage reports
Dangerfiles
Ruby (danger)
- https://github.com/SwifterSwift/SwifterSwift/blob/master/Dangerfile
- https://github.com/IBAnimatable/IBAnimatable/blob/master/Dangerfile
- https://github.com/CocoaPods/CocoaPods/blob/master/Dangerfile
- https://github.com/SwiftWeekly/swiftweekly.github.io/blob/master/Dangerfile
- https://github.com/pusher/chatkit-swift/blob/master/Dangerfile
TypeScript (danger-js)
- https://github.com/artsy/eigen/blob/main/dangerfile.ts
- https://github.com/artsy/emission/blob/master/dangerfile.ts
- https://github.com/artsy/energy/blob/main/dangerfile.ts
- https://github.com/artsy/force/blob/main/dangerfile.ts
Swift (danger-swift)
Peril
What is Peril?
Peril is a tool that takes GitHub webhooks, and makes it easy to build one-off actions. It does this by having a per-account settings JSON, that connects JavaScript files to events from webhooks.
So, for example, you can write a rule which runs when closing an issue in GitHub that looks for associated Jira tickets and resolves them.
Peril provides no implicit actions like that, it instead offers a JavaScript runtime environment optimised to this domain so you can make actions to fit your needs.
Peril Settings Repos
Organizations
- https://github.com/danger/peril-settings
- https://github.com/artsy/peril-settings
- https://github.com/CocoaPods/peril-settings
- https://github.com/Moya/moya-peril
- https://github.com/RxSwiftCommunity/peril
- https://github.com/loadsmart/peril-staging-settings
- https://github.com/wearereasonablepeople/peril-settings
- https://github.com/wemake-services/kira-review