1. A method for contextual documentation, comprising: receiving an identified state of a first application by utilizing a second application, the second application being external to the first application, the identified state including a name and an associated set of topics, each topic of the associated set of topics includes a type and a key, the type including one of: a button, a screen, a task or a concept, the key including one of: a new button, a delete dialog, or a publishing concept; determining contextual content to display based on the received identified state of the first application, including: selecting a contextual content generating module from amongst a plurality of contextual content generating modules of the second application to obtain the contextual content for display, the selected contextual content generating module being selected from amongst the plurality of contextual content generating modules based on an identity of a developer of the selected contextual content generating module, the plurality of content generating modules including a help module, a documentation module and a training module, the plurality of content generating modules collectively generating content configured to provide a help system, a documentation system and a training system; utilizing a retrieval module of the second application to obtain the selected contextual content for display; displaying the selected contextual content; receiving a second identified state of the first application by utilizing the second application; changing the contextual content to display by utilizing the second application based on the received second identified state of the first application; and displaying the changed contextual content.