1. A method for authoring content using a computing device, the method comprising: presenting, by the computing device, a content authoring interface; receiving, by the computing device, an item of content via the content authoring interface; receiving, by the computing device, at least one context associated with the item of content; dynamically updating, by the computing device, a content repository based on the received item of content and the at least one received context associated with the item of content; determining, by the computing device, one or more current contexts for the computing device; selecting, by the computing device, one or more items of content from the content repository based at least in part on the determined one or more current contexts; and presenting, by the computing device, the selected one or more items of content.