Gantt pluggin (task/topic displayed against time)

Hi everyone !

First of all, I have no coding skills so forgive me if it seems unrealistic or whatever (I am just starting to learn JavaScript to use more extensively Dataview…)

Obsidian is a wonderful tool for a ton of purposes, and I think a pluggin might be useful for a particular use, let me go into details.

Context

I haven’t found a lot of other Obsidian users in the same field/having the same needs than me, so let me explain a bit

I use obsidian for professional purposes. I am working in a small R&D lab in chemistry industry (scientific field). I use Obsidian with a few pluggins, the main one being Dataview and Metadata Menu (and Canvas core pluggin).

With those pluggin, I extensively use metadatas in Obsidian to keep track of projects, task and topic management for the entire team and finally knowledge-wiki (to keep track of acquired knowledge and experience).

Pluggin feature idea

Global idea

To be fully functional for long term project, Obsidian could you a Gantt-type pluggin to complete Canvas and Dataview global task-related views.

Gantt chart are used to display tasks in time and relation between task in time.

Here is a few examples :

  • Task B can only be started when task A is completed
    Gantt_1

  • Task D can be started when task C is completed, which can be started when task B is completed, which can start when task A is completed (each task has it unique time duration).
    All of those are parts of red global task
    image

All those task on a specific project are usually displayed in a global view like the following one, to detail task time timeline. It could work the same way in Obsidian or maybe change the global view based on Obsidian specificity.

How it would work

I use the word “Task” to talk about an Obsidian note because I personally use note as topic or experiment notes, as “tasks” on a bigger project.

I imagine it would be based on Dataview (probably Dataviewjs ?) and Metadata menu.

Start by introducing the metadatas on existing notes (maybe with command palet) :

  • previousTask : link to the previous necessary completed task
  • nextTask : link to the time-daughter task (maybe not necessary if it is possible to follow the entire link of time-task only one previousTask)
  • duration : duration expected for the task to be completed. Manually entered or calculated based on the next metadata,
  • dueDate : date when the task if expected to be completed. Manually entered or calculated based on the the metadata duration.

Those 4 metadata needs to be easily updated, that’s why I think Metadata menu is needed.
It may be possible to add those specific metadata on template to avoid adding it manually to each new note → more specific names such as previousGanttTask, nextGanttTask, dueDateGantt…

Then, with the command palet, create a new Gantt project based on a specific note (start of the Gantt project). Two possiblity :

  • Automatic creation of timeline based on in and outlinks
  • Manual adding of notes

Possibility to horizontally adjust size of the task to change it’s duration (automatic metadata adjustment)

Possibility to change time-link between notes

Possibility ro right click the task to access it in the Canvas view (if it exists) or local/general graphic view

On the left panel, possibility to create goups/phase of tasks : scientific watch, commercial and market study, R&D development, industrialization processing, project starting, project finalization and feedback (and so on)

Possibility to visualize tasks in the note on the timeline (I mean real task, with checkboxes) under the task to see what is needed before completing the task and free the next task


It is a long shot, I have no idea if it can be made, but even if it is not the case it is a nice thinking exercise and I hope it might be useful for something else.

I’d love to discuss the idea and have your feedback regarding the idea !

4 Likes