Skip to content

Usage Documentation

CS Goh edited this page Nov 19, 2022 · 29 revisions

Roadmap Anatomy

Roadmap generated by Roadmapper consists of 7 components as depicted below: Roadmapper Anatomy

  • Title: This is the title of the roadmap.
  • Timeline: This section shows roadmap timeline. Timeline can be configured to show different time scale as below:
    • weekly
    • monthly
    • quarterly
    • half-yearly
    • yearly
  • Group: This is used to group all tasks together. Every task belongs to a group.
  • Task: This is used to show task or activity for a given start and end date.
  • Parallel Task: This is used to show a new another task or activity on the same line.
  • Milestone: This is used to show a 'diamond' shape symbol to denote a milestone. Milestone is optional.
  • Footer: This is the footer of the roadmap. Footer is optional.

Steps to create a roadmap

Step 1: Import Roadmap and TimelineMode package

from roadmapper.roadmap import Roadmap
from roadmapper.timelinemode import TimelineMode

Step 2: Create a Roadmap instance.

my_roadmap = Roadmap(width=500, height=300)

In the Roadmap constructor method, specify the roadmap canvas size. The measurement is in pixel.


Step 3: Configure roadmap title and timeline

my_roadmap.set_title("My Roadmap")
my_roadmap.set_timeline(mode=TimelineMode.MONTHLY, start="2022-11-14", number_of_items=6)

Call set_title() method to specify the text to be displayed as title. You can specify font, font size, and font colour if you want to change the style.

my_roadmap.set_title(
    text="My Roadmap", 
    font="Arial", 
    font_size=18, 
    font_colour="Black")

Call set_timeline() method to configure the roadmap timeline. The timeline changes depending on the mode, start date and number of items to be display on the canvas. Additional parameters can be passed in to configure the font, font size, font colour and fill colour.

my_roadmap.set_timeline(
    mode=TimelineMode.MONTHLY, 
    start="2022-11-14", 
    number_of_items=6, 
    font="Arial", 
    font_size=10, 
    font_colour="Black", 
    fill_colour="Ligthgrey")

font_colour and fill_colour support web colour name (e.g. Red) or hex code (e.g. #FF0000) Supported TimelineMode includes:

  • TimelineMode.WEEKLY
  • TimelineMode.MONTHLY (default)
  • TimelineMode.QUARTERLY
  • TimelineMode.HALF_YEAR
  • TimelineMode.YEARLY

Step 4: Add group and task(s) to the roadmap

group = my_roadmap.add_group("Development")
group.add_task("Activity 1", "2022-12-01", "2023-02-10") 

You can add more tasks by calling add_task() method multiple time.

group.add_task("Activity 2", "2023-01-11", "2023-03-20")
group.add_task("Activity 3", "2023-01-21", "2023-06-30")

Step 5: Configure footer

my_roadmap.set_footer("Generated by Roadmap Generator")

Step 6: Render the roadmap

my_roadmap.draw()

Step 7: Save the roadmap to a PNG file format

my_roadmap.save("my_roadmap.png")

Output

my_roadmap.png

How to display multiple tasks or activities on the same line?

To display tasks on the same line as other tasks, call add_parallel_task() method as shown below.

group = my_roadmap.add_group("Core Features")
task = group.add_task("Feature 1", "2022-12-01", "2023-02-10")
task.add_parallel_task("Feature 2", "2023-03-01", "2023-04-30")

Remember to use 'task' instance returned from add_task() method to invoke add_parallel_task() method. The code example basically shows "Feature 2" on the same parallel line as "Feature 1"

How to display milestone on tasks?

To display a milestone on task. call add_milestone() method.

task = group.add_task("Feature 4", "2023-01-21", "2023-05-30")
task.add_milestone("Milestone 1", "2023-05-31")

Remember to use 'task' instance returned from add_task() method to invoke add_milestone() method. The code example shows a milestone on 31 May 2023 with the label "Milestone 1"

Clone this wiki locally