Howdy! Any thoughts on what I should be looking into, to create a personal task management mini-website (for Drupal learning purposes)? See below if interested in my rambling on the topic. :)

I'm quite new to Drupal, but not php, mysql, html, css etc., and have read through docs, watched lots of youtube, and am playing with a local "stack".

With a goal to get to know Drupal theme, module, and general development better, I'm creating a fun task management mini-website. I've never found a task management website that I truly fell in love with. I thought this would be a great opportunity to hit two birds with one stone; know Drupal more, and manage my tasks better.

One website that has come very close to meeting my task management needs is www.rememberthemilk.com. I'm using that quality website as a good source of inspiration. However they are missing features I use on my personal task list I keep, such as ordering tasks easily (drag and drop or order links, no due date needed), setting the "status" of a task. I also want some other "views" like a historical calendar of completed tasks or calendar of whatever was on the plate at any given time.

Currently I post an all day event to Google Calendar every day with details that look like the following, and "x"ed off tasks taken off the next day's list like this:

Web Specific:
[--] move products to about - looking into details (no time, does not make sense either)
[x] run query on missing descriptions and pictures

Bug fixes:
[w] Work with mark on pricing range fixes (waiting on feedback)

Marketing Specific:
[p] design 3 sell sheets
__[x] general info sell sheet
__[p] some other sell sheet
__[o] another sell sheet

Key:
[x] 'x'ed off the list
[p] in progress
[o] to do
[--] skipped
[w] waiting on something
[?] more details needed

Yep, I do that everyday almost. :P I think Drupal can make this more fun and offer some reporting options.

So here's what I'm thinking my Drupal solution is. Please jump in if you can think of a better way to do this, or have additional input:

  • install Views and CCK modules
  • make "Task List" and "Task" node types
  • make a wicked awesome theme
  • create "Task Lists" menu that lists all my personal task list (I guess I would also create a role for editing my own lists in case there are multiple users with their own lists?)
  • create "Tasks Lists" view to list "Task List" nodes?
  • create "Tasks" view to list "task" nodes?
  • Create a custom module to manage tasks (I don't know where to start)
  • taxonomy for "Task" node statuses
  • some kind of something to log status changes (hmm)

Any thoughts? I appreciate the assistance. This will help me unblock some blocks, and maybe even help me make some cool blocks too!

Thanks much in advance!

Comments

WorldFallz’s picture

A couple of thoughts:

  • check out the views module
  • checkout the nodequeue module (especially with patch @ http://drupal.org/node/234004) - this is for drag and drop ordering
  • not sure i would make task list a node type but if i did it would be view based with a viewreference field.
  • changes can be logged automatically by enabling revisions on the task item content type and you can use the diff module to see easily see the differences between revisions
  • i would probably also add a freetagging taxonomy vocabulary for tagging items and/or lists

This is actually quite easily done with drupal-- you should have fun doing it and learning drupal at the same time!

databoy’s picture

I agree with worldfallz, above, that "Task List" probably shouldn't be a node (unless using nodereference; something like this: http://drupal.org/project/nodereference_views might work), but grouping tasks as a view using taxonomy as a way to group them.

The only other thing I could add would be the Date API so that you could hook into that for your tasks...

I look forward to seeing the results!