Asana Navigator: Unofficial efficiency browser extension to enhance navigation for Asana tasks

Hi,

I love Asana and use it every day to manage everything from personal to work stuff. It’s already great but I’m an efficiency-oriented person so I wanted to make it a little quicker.

As an amateur programmer, I implemented some features that I wanted as a Google Chrome extension. I hope this extension helps you too with small details in your Asana work.

Features:

This way you can click another subtask more quickly than pressing Tab+↑ or Tab+← (the later is not documented but I found it). Unfortunately, in the current version the page itself is reloaded when you click the other subtask but I’ll change the behavior in the future updates so that only the right pane is refreshed.

  • Display projects (+ section selector if any) on top
  • Display arrows to go to next/previous sibling subtasks (Tab+G/J)
  • Display drop-down list to display all sibling subtasks (Tab+N) - in the above screenshot
  • Set new parent task from the toolbar (Tab+R)
  • Remove duplicate links and replace HTML entities in the task description (Tab+E)

All done seamlessly in Asana UI, in your localized language, using the same classes/CSS used by Asana (at least I try as much as possible).

Each feature can be switched on/off in the extension options.

Installation:

Install it from the Chrome Web Store.

Please reload the Asana task page if this extension doesn’t work well, especially when Asana Navigator has just been updated to a newer version.

Contact:

I have still many more features that I want to implement, but I’m sharing this with you now as I’ve created the most important features that I wanted. I’d love to hear from users and developers.

Please feel free to post comments, feature requests, bug reports, and questions, here on Asana Community or through the Chrome Web Store.

This is an open source project and you can see the source code and report issues at GitHub.

Thank you!
Shun

5 Likes

@ShunS. Wow… Great job will definitely be adding to my Browser and giving it a whirl… Thanks for sharing with the community…

@Bastien_Siebman Maybe one for you Asana tool list…

Jason.

3 Likes

Very nice work. @lpb have a look!

2 Likes

Great work, @ShunS! Some interesting features, and I’d say this extension is a must for anyone who uses sub-subtasks. Keep up the good work and keep us posted.

Larry Berger
Asana2Go & Asana Certified Pro consultant at Trilogi

1 Like

Thank you all for the encouragement. I’ll continue to improve it and keep you updated :smiley:

1 Like

Hi everyone,

I’d like to give you an update of my extension.
From version 1.6, which is released today, you can replace text in the task description, just as you do in a text editor.
You can invoke the dialog with Tab+E keyboard shortcut.

Some thoughts:

  • It might be quicker if I do the replacement on the client side (DOM manipulation) rather than using Asana API. I’ll think about it later.
  • Recently I was approved as an Asana Torchbearer. I’d like to clarify now that this extension is my own unofficial project and I don’t have any affiliation with Asana.

As always, I’d love to receive feedback, feature requests, and questions.

Best regards,
Shun

2 Likes

This is so freakin’ amazing, Shun!

Great work with this. And big thanks!

Cheers,
Ryan

1 Like

Hello,
I’m happy to announce that Asana Navigator (version 1.9.2) now reloads only the necessary pane when jumping to sibling subtasks, not refreshing the whole page anymore. This makes the move significantly faster.
If you have stopped using my extension because of the slowness, please give it another try!
Best regards,
Shun

3 Likes

Hello,
I added another feature in version 1.10.0, going back from Inbox to the URL before accessing Inbox (Tab+J) :slight_smile:


Because it takes time and energy to remember what I was doing before being interrupted by a notification, and to follow the same path to access that page, I used to always have two Asana tabs open, the work/reference page and the Inbox page.
Now I only need to have one tab open, because I can quickly jump back to the previous work, minimizing the interruption. Hope you’ll like it too.
Best regards,
Shun

1 Like

Hello,
With the version 2.0.0 released today, Asana Navigator supports the following features:

  • You can now convert multiple tasks to subtasks of another task at once (Tab+G). This applies to multiple tasks in the middle pane, not the subtasks in the right pane.
  • You can now convert tasks to sections and vice versa again, with a keyboard shortcut (Tab+:). This works where Tab+N is supported, either on a task in the middle pane of a project view or my task view, or on a subtask in the subtask list in the right pane.

For details about the second one, please see the below post:

This is Tab+: in action:

4 Likes

Hey, I recently discovered your extensions and have been using and loving it for the past few days!

I have some feedback for the new task-to-subtask conversion feature, though: when applying it to multiple tasks, their order gets reversed when they become subtasks. This can disrupt workflow when you have to keep those subtasks in a specific order.

Cheers, love your extension!

2 Likes

Hi @Ravi1,
Thank you very much for using my extension and giving me feedback!
It’s always great to hear from users :slight_smile:

Thank you for reporting the problem. I couldn’t catch it before releasing the version.
The code was like this:

// setParentData = {'parent': 'parentGid', 'insert_before': null};
// taskGidList = ['taskGid1', 'taskGid2', ...];

for (let i = 0; i < taskGidList.length; i++) {
  callAsanaApi('POST', `tasks/${taskGidList[i]}/setParent`, {}, setParentData, function (response) {
    if (i === taskGidList.length - 1) {
      displaySuccessToast();
    }
  });
}

When converting multiple tasks into subtasks, the extension would send all requests almost simultaneously, with just a few milliseconds of interval. So the order of the subtasks got messed up if one request was processed quickly on Asana server and another request took longer.
I changed it to the following code:

let counter = 0;
const recursiveSetNewParent = function (path, options, data) {
  callAsanaApi('POST', path, options, data, function (response) {
    counter += 1;
    if (counter === taskGidList.length) {
      displaySuccessToast();
    } else {
      path = `tasks/${taskGidList[counter]}/setParent`;
      recursiveSetNewParent(path, options, data);
    }
  });
};
recursiveSetNewParent(`tasks/${taskGidList[counter]}/setParent`, {}, setParentData);

This way the extension waits until the previous request is processed, before sending the next one. It takes 1-2 seconds in interval when I try it in Japan, but I think it’s better to prioritize stability over speed this time.

I’ll do some testing and release the fixed version later today.
Thank you again for your report, and please keep sending feedback!
Surely there are still many things to be improved.

3 Likes

Hi again!
Thank you very much for fixing that issue, really appreciate it :slight_smile:
There’s just something I noticed: whenever I transform tasks into subtasks, they are shown under the new parent task, but they stay, weirdly duplicated, simultaneously, in the project and the new parent task.
I don’t know if I was very clear, but it’s happened every time I’ve converted tasks into subtasks.
Thank you advance!

Hi @Ravi1, thank you for your comment.
If you’re talking about projects not removed after converting to subtask, that’s actually the intended behavior. It’s something that differentiates my feature, and the reason I keep the feature in my extension even after the Advanced Actions were implemented. If you’re talking about something else, please describe the issue in more details.

With Asana’s official features (both drag & drop and from Advanced Actions menu), projects, assignee, and/or tags are removed, depending on the current view. I found that behavior sometimes unpredictable and I often prefer to keep the projects and assignee when setting the new parent task. So, please manually remove projects after conversion or use Asana’s official feature depending on your needs.

I described the difference in the below post but it was not visible from this thread. Your comment reminded me of the importance of putting “everything in one place.” I’ll start thinking about documenting the features seriously (e.g. on GitHub Wiki). Please let me know if I answered your question or if you need some other information. Thank you in advance!

Hello,

I implemented a shortcut button to search tasks in the currently open project, tag, or user :tada:
When you click this shortcut, the corresponding field in Advanced Search will be populated.
It works best when Advanced Search is available in your Organization or Workspace. If not, it is recommended to turn this feature off from the extension options.

Also, I centralized all the links to my many community posts in Readme of my GitHub repository. When you click on the blue links, you can see the details about the feature.

As always, I hope this extension makes your life a little easier.
Please let me know if you have any feedback, questions, bug reports, or feature requests.
Thank you! :slight_smile:

2 Likes

Today, I released Asana Navigator for Firefox. Firefox is the second popular browser in the world, and I’m excited to support it :slight_smile:
If you know someone interested in this extension, but they are using Firefox, I’d appreciate it if you could recommend it. Thank you!

4 Likes