Greasemonkey script for Lotus Connections dynamic drop-down menus

Install this script from IBM Lotus Connections Drop-down menus

IBM’s Lotus Connections software is an enterprise social software application that consolidates a lot of collaboration and information sharing within the enterprise to a single location. We use Lotus Connections quite extensively within IBM and it has been an amazing improvement over many of our previous tools and methods for project, team, and professional collaboration.

The recently announced Lotus Connections 2.5 features communities, blogs, wikis, file sharing, social bookmarking, activitiesprofiles, and a customizable dashboard.  I can tell you that I use every single one of those features on a daily basis and its been a great step forward in so many ways. Knowledge is being better shared across our enterprise and it can be found more easily. Projects and teams can stay organized and on track. To-dos can be assigned and tracked.

While my overall satisfaction with the product is quite high, one small design issue bugs me. Thankfully, Lotus Connections is a web application that I can use the Greasemonkey addon for Firefox to alter aspects of the design.  I often find myself having to switch between sections in Lotus Connections–On a wiki page and need browse to a wiki section within a community.  The default design has a top bar menu with only top-most navigation items:


Getting around Lotus Connections sometimes requires clicking through multiple unnecessary pages.  I decided to add drop-down menus to each menu item to reduce the number of clicks to get around. I eventually discovered the ATOM feeds for each Lotus Connections area and determined I could add links for specific areas such as a list of all your communities or a list of all files that have been shared with you (had to blur out the actual files in the screenshot):


Overall, this script helps improve an already awesome application a bit more.  I’m hoping to convince the Lotus Connections teams to implement some kind of navigation that either matches this experience or something similar for being able to more quickly navigate to specific items in your network.

Using this script

You can use this script on, which is an IBM implementation of Lotus Connections 2.5. You can also customize the locations that this Greasemonkey script runs to include your own installations. For example, if you want it to run against* you would include that location:


If you are an IBM employee, you can find an internal version of this script for use with our own internal deployments. Check my internal Connections Blog by searching for Greasemonkey.

Improving navigation for IBM’s My developerWorks with Greasemonkey

I recently released a version of my Lotus Connections greasemonkey script for adding dynamic drop-down menus for use with IBM’s myDeveloperWorks. You can download this script from IBM My developerWorks drop-down menus

Improvements to myDeveloperWorks

MyDeveloperWorks is awesome but sometimes navigating between sections gets annoying if you are someone that constantly uses this site. Jumping between Blogs to your Groups could involve multiple page loads and clicks by default. This script can help eliminate that unnecessary browsing by adding drop-down menus to the site’s existing menu.

Default menu on myDeveloperWorks

Default menu on myDeveloperWorks

When you install this script, it will add some standard drop-down menus and it will also load your specific items such as your groups, bookmarks, and activities.

Showing dynamic and customized drop-down menus that are added by this script

Showing dynamic and customized drop-down menus that are added by this script

Script details

Interested in the code?  This Greasemonkey script uses jQuery 1.2.3 to perform most of its work. jQuery makes creating Greasemonkey scripts amazingly easy to work with the Document Object Model (DOM) as well as adding fancy effects and performing Ajax calls.

jQuery is mostly focused on the user of selectors to uniquely identify content in a similar manner to CSS selectors.  This selector behavior is awesome for greasemonkey scripts because you cannot always easily parse a site’s HTML with standard Javascript and the code becomes extremely complex.  jQuery allows you spend your time on improving the user experience rather than deal with the plumbing.