I'm building a desktop application in Flex/AIR, and one of the current items on my TODO list is to develop a help system.
Throughout the GUI, there are little (?) buttons. When the user clicks one of those buttons, a HelpPanel appears, displaying some relevant information from the docs.
Simple enough.
But I'd really like to build a full-fledged help system, just like the ones normally deployed in desktop apps: a hierarchical table of contents, the ability to search for keywords, hyperlinking between help topics, etc.
Also, since my app will provide an API for plugin authors, I'd like to also provide hooks for third-party plugins to integrate their own documentation in with the core help system.
With my app, the user may not always be online, so all of the help data must be available locally (though it'd be very cool if new help content could be synchronized periodically from a server).
Building that kind of help system from scratch would be relatively straightforward, but it would also take a lot of time away from actually developing the core features of my application, so I'd rather use an off-the-shelf solution.
I've done a bit of googling, but can't find anything that fits the bill.
Any suggestions?