For Atlassian’s 7th ShipIt Day I implemented a Confluence macro that would defer rendering its body until the full page was received by the client. The body of the macro would then be sent back to Confluence for rendering via AJAX while the user was presented with a loading placeholder. As the rendering of the body occurs in the future with respect to the original page rendering pipeline, I called this functionality the Future Macro. It is ideally suited for rendering content that is retrieved from external sources where high latency can hold up the delivery of other content on the page.
After some further refinement during Atlassian’s 20% time scheme, I am now pleased to announce that the Confluence Future Macro has been released as an open source plugin on the Atlassian Labs site.
It is currently in beta release and I welcome all feedback regarding its current operation and future improvements. Of course, as Atlassian has generously allowed me to release the source under the Apache 2 license, you are very much free to adjust it as you see fit!

Presenting the Future Macro