• Stars
    star
    5,001
  • Rank 8,345 (Top 0.2 %)
  • Language
    TypeScript
  • License
    MIT License
  • Created about 8 years ago
  • Updated about 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

⚠️ Stop saying "you forgot to …" in code review


Formalize your Pull Request etiquette.

What is Danger JS?VisionHelping OutPlugin Development

What is Danger JS?

Danger runs after your CI, automating your team's conventions surrounding code review.

This provides another logical step in your process, through which Danger can help lint your rote tasks in daily code review.

You can use Danger to codify your team's norms, leaving humans to think about harder problems.

Danger JS works with GitHub, BitBucket Server, BitBucket Cloud for code review, then with: Travis CI, GitLab CI, Semaphore, Circle CI, GitHub Actions, Jenkins, Docker Cloud, Bamboo, Bitrise, surf-build, Codeship, Drone, Buildkite, Nevercode, buddybuild, Buddy.works, TeamCity, Visual Studio Team Services, Screwdriver, Concourse, Netlify, CodeBuild, Codefresh, AppCenter, BitBucket Pipelines, Cirrus CI, Codemagic or Xcode Cloud.

npm Build Status Build Status

For example?

You can:

  • Enforce CHANGELOGs
  • Enforce links to Trello/JIRA in PR/MR bodies
  • Enforce using descriptive labels
  • Look out for common anti-patterns
  • Highlight interesting build artifacts
  • Give warnings when specific files change

Danger provides the glue to let you build out the rules specific to your team's culture, offering useful metadata and a comprehensive plugin system to share common issues.

Getting Started

Alright. So, actually, you may be in the wrong place. From here on in, this README is going to be for people who are interested in working on and improving on Danger JS.

We keep all of the end-user documentation at http://danger.systems/js.

Some quick links to get you started:

This thing is broken, I should help improve it!

Awesommmmee. Everything you need is down below. You can also refer to CONTRIBUTING file where you'll find the same information listed below.

git clone https://github.com/danger/danger-js.git
cd danger-js

# if you don't have yarn installed
npm install -g yarn

yarn install

You can then verify your install by running the tests, and the linters:

yarn test
yarn lint

The fixers for both tslint and prettier will be applied when you commit, and on a push your code will be verified that it compiles.

You can run your dev copy of danger against a PR by running:

yarn build; node --inspect distribution/commands/danger-pr.js https://github.com/danger/danger-js/pull/817

How does Danger JS work?

Check the architecture doc.

What is the TODO?

Check the issues, I try and keep my short term perspective there. Long term is in the VISION.md.

Releasing a new version of Danger

Following this commit as a model:

  • Checkout the main branch. Ensure your working tree is clean, and make sure you have the latest changes by running git pull; yarn.
  • Publish - npm run release -- patch --ci.
  • This will trigger a CI run which updates homebrew for the native builds

🚢

License, Contributor's Guidelines and Code of Conduct

We try to keep as much discussion as possible in GitHub issues, but also have a pretty inactive Slack --- if you'd like an invite, ping @Orta a DM on Twitter with your email. It's mostly interesting if you want to stay on top of Danger without all the emails from GitHub.

This project is open source under the MIT license, which means you have full access to the source code and can modify it to fit your own needs but don't have access to deploy.

This project subscribes to the Moya Contributors Guidelines which TLDR: means we give out push access easily and often.

Contributors subscribe to the Contributor Code of Conduct based on the Contributor Covenant version 1.3.0.

More Repositories

1

danger

🚫 Stop saying "you forgot to …" in code review (in Ruby)
Ruby
5,457
star
2

swift

⚠️ Stop saying "you forgot to …" in code review
Swift
958
star
3

kotlin

⚠️ Stop saying "you forgot to …" in code review
Kotlin
496
star
4

peril

☢️ Serious and immediate danger.
TypeScript
458
star
5

awesome-danger

An awesome list of all things Danger
317
star
6

python

⚠️ Stop saying "you forgot to …" in code review
Python
91
star
7

rust

⚠️ Stop saying "you forgot to …" in code review
Rust
42
star
8

dart

Dart
41
star
9

danger-mention

Danger plugin to automatically mention potential reviewers on pull requests
Ruby
29
star
10

design

Design Work and Media Kit
20
star
11

danger-plugin-template

An opinionated template for creating a Danger plugin
Ruby
19
star
12

danger-gitlab-gem

A gem that holds the GitLab specific dependency tree
Ruby
9
star
13

danger.systems

Old website for Danger.Systems -> New website =
HTML
9
star
14

peril.systems

Migrated into the main peril repo
TypeScript
7
star
15

generator-danger-plugin

Yeoman generator to generate a Danger plugin
JavaScript
6
star
16

peril-settings

🔎 The danger org's instance of Peril's settings
TypeScript
6
star
17

danger-plugin-api

A gem for Danger plugin authors to use to use for SemVer on the API
Ruby
5
star
18

hazmat

Web infrastructure management for Peril - migrated into the peril repo
TypeScript
5
star
19

danger-ts

An npx-able mix of Danger and TypeScript
JavaScript
4
star
20

homebrew-tap

The homebrew repo for Danger projects
Ruby
4
star
21

java

4
star
22

danger-js-gem

A gem that exists to ensure all dependencies are set up for Danger when using a JS Dangerfile.
Ruby
4
star
23

peril-settings-linter

A node module for listing the settings file
TypeScript
3
star
24

dangerfile-gem-template

A gem template for Dangerfile gems.
Ruby
2
star
25

dashboard.peril.systems

Migrated into the peril repo
TypeScript
1
star