Boog Slayer /

Full commit

Boog Slayer

What aims to be a sweet-action issue tracking system written in Python, and allowing for easy multiple project support.


  • Support for projects
  • Support for tasks
  • Support for users
  • Support for timesheets


While not strictly required, each task must be assigned to a project. If none is provided, the default project will be used.

In the first release, a project will consist of a unique name, a description, and an archived flag.


A user consists of a unique id (e.g. username, or email address - Boog Slayer makes no requirements of what is unique in your system), and name. The user also has a timesheet that consists of work Intervals


An interval consists of a start datetime, and end datetime, the task_id - the id of the task that has been worked on - and the user_id - the id of the user that has done the work.


A task has a variety of information to help sort and classify it. Each task has a unique id that is automatically assigned, and it must be assigned to a project - the default one by, uh, default. Other optional values are:

  • desc: A short description of the task
  • type: The type of the task. Suggested types: bug, item, feature request
  • status: The status of the task. Suggested status values: new, assigned, in progress, completed, closed, won't fix
  • assigned_to: The id of the user the task is assigned to. Can be None, or the actual ID of a user.
  • contact: People to contact for the task. Suggested use: Name, or IDs of users
  • priority: An integer priority of the task. Suggested values: 1 - Highest, through 10 - Lowest
  • due: The due datetime of the task.
  • original_estimate: The first estimate provided for the task.
  • current_estimate: The most up-to-date estimate of time left on the task.
  • version: Suggested use: The version of the application this task relies on.
  • backlog_order: An integer describing the backlog order of the task. Suggested use: 1 - next thing to work on, N - last thing to work on
  • area: The area that the task belongs to. Suggested use: QA, Developers - or UI, Backend
  • parent_case: Suggested use: A case that depends on this case being done first