@hackage ticket-management0.2.0.0

A basic implementation of a personal ticket management system

Ticket Management

A basic ticket management system for personal work. Here is the latest usage info:

Ticket Manager!

Usage: ticket-manager COMMAND
  Allows the user to manage work tickets.

Available commands:
  create                   Creates a new ticket
  edit                     Edits the name, description, and/or status of an
                           existing ticket
  relate                   Relates two tickets to each other
  unrelate                 Removes the relationship between two tickets
  query                    Search for tickets
  init                     Initializes an empty ticket system
  tag                      Applies some tags to tickets
  validate                 Validate the ticket system

Of special note is the help text for the query command:

Usage: ticket-manager query [(-n|--name ARG) | (-x|--tag ARG) | (-i|--id ARG) |
                              (-s|--status ARG) | (-b|--blocks ARG) |
                              (-s|--subsumes ARG) | (-p|--blocked-by ARG) |
                              (-k|--subsumed-by ARG)] [-o|--ordering ARG]
                            [-l|--limit ARG]
  Search for tickets

This tool allows you to create tickets, specify relationships between them, tag them, and then query them. To get all of the tickets you've tagged epic-1 and backend which are not yet in progress, you can run the following:

ticket-manager query --tag epic-1 --tag backend --status todo

You can run instead:

ticket-manager query -x epic-1 -x backend -s todo

To create a ticket, we can run:

ticket-manager create my_first_ticket --name "The Best Ticket" --description "This ticket truly is the best" --status todo

You can run instead:

ticket-manager create my_first_ticket -n "The Best Ticket" -d "This ticket truly is the best" -s todo

With every command there is an associated --help command which I hope will help you learn how to use the rest of the commands.

PRs and feedback is welcome, though I am aware this tool is missing several notable features that today's ticket management systems have like dates, assignment, and lots of other things. These things are left out on purpose, as it is meant to be a simplified version for individuals to use, most notably myself.