Giter VIP home page Giter VIP logo

danger-plugin-todos's Introduction

danger-plugin-todos

Build Status npm version npm downloads semantic-release License

A danger-js plugin to list all todos/fixmes/etc added/changed/removed in a PR.

Intro to Danger

Danger is a tool to automate common code review practices. It can run as part of your CI pipeline and help maintain standards. Check out their github repo at danger/danger-js. You can configure it using a dangerfile, which is a javscript or typescript file in the root of your project. It'll post it's results as a comment in the PRs of your project.

Usage

To use you must already have danger-js set up in your repo.

Install

yarn add danger-plugin-todos --dev
# OR
npm i --save-dev danger-plugin-todos

At a glance

// dangerfile.js
import { schedule } from 'danger'
import todos from 'danger-plugin-todos'

// Using schedule because this is an async task
schedule(todos())


// Optionally provide options
schedule(todos({
    ignore: ['CHANGELOG.md', /test/], // Any files to ignore, can be part of filename or regex pattern to match (default: [])
    keywords: ['TODO', 'FIXME', 'TO-DO'], // Keywords to find (default: ['TODO', 'FIXME'])
    repoUrl: 'https://github.com/rohit-gohri/danger-plugin-todos', // If using github provide the repo url (default: true - tries to pick from package.json -> repository.url)
}))


// For other git providers (that don't follow github style links for files) provide a custom function to turn filepaths into links for the specific commit
schedule(todos({
    repoUrl: (filepath) => `https://custom-git-example.com/rohit-gohri/danger-plugin-todos/tree/${danger.git.commits[0].sha}/${filepath}`,
}))

schedule(todos({
    repoUrl: false, // for using simple filepaths without links
}))

Results Preview

Github

github example

Gitlab

gitlab example

Bitbucket

This is an example for #4

bitbucket example

Changelog

See the GitHub release history.

Contributing

See CONTRIBUTING.md.

danger-plugin-todos's People

Contributors

rohit-gohri avatar dependabot[bot] avatar xenokratos avatar emredoganm avatar honzamac avatar mattapperson avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.