Git Product home page Git Product logo

toodles's Introduction

Toodles

Build Status Hackage

Toodles scrapes your entire repository for TODO entries and organizes them so you can manage your project directly from the code. View, filter, sort, and edit your TODO's with an easy to use web application. When you make changes via toodles, the edits will be applied directly the TODO entries in your code. When you're done, commit and push your changes to share them with your team!

Toodles Screenshot

TODO details

Specify details about your TODO's so that you can filter and sort them with ease! Specify details within parenthasis and separate with the | delimeter.

# TODO(assignee|p=1|keys=vals|#tags) 

Priority

The key p=<integer> will be interpreted as a priority number

KeyVals

Use arbitrary key value pairs <key>=<value>|<key2>=<value2>|... and design any organization scheme you wish! A good use for this is to enter dates of deadlines for TODO's that you can sort on in Toodles

Tags

A detail starting with #, eg #bug|#techdebt|#database|... will be interpreted as a tag, which can be used to label and group your TODO's.

Assign

Assign your TODO's to someone. Any plain word that will be interpreted as an assignee.

# TODO(bob) - something we need to do later

Per Project Configuration

You can configure toodles by putting a .toodles.yaml file in the root of your project. See this repo's .toodles.yaml for the full configuration spec.

Currently via config you can:

  • Set files to ignore via a list of regular expressions

Scanned Languages

These languages will be scanned for any TODO's:

  • C/C++
  • C#
  • Elixir
  • Erlang
  • Go
  • Haskell
  • Java
  • Javascript
  • Kotlin
  • Lua
  • Objective-C
  • Protobuf
  • Python
  • Ruby
  • Rust
  • Scala
  • Shell / Bash
  • Swift
  • Typescript
  • Yaml

Submit a PR if you'd like a language to be added. There will eventually be support for this to be user configurable

Installing

The easiest way to get toodles is via stack. Just a stack install toodles and you're done! Alternatively, with GHC 8.4.3 you can use cabal. If there is desire for it I can look into precompiled distribution.

Running

Invoking toodles with no arguments will treat the current directory as the project root and will start a server on port 9001. You can set these with the -d and -p flags, respectively.

# $ toodles -d <root directory of your project> -p <port to run server>
# for more info run:
# $ toodles --help
$ toodles -d /path/to/your/project -p 9001
# or simply
$ toodles

Current Limitations

Due to the parser's current simplicity, Toodles won't see TODO's in multiline initiated comment. For instance in javascript

// TODO(#bug) this would be parsed

/*

 TODO(#bug) this will _not_ be picked up by toodles

*/

toodles's People

Contributors

aviaviavi avatar fdeitylink avatar damiencourousse avatar lifecoder45 avatar

Watchers

Aaron R Bell 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.