The way this usually works in my experience is that if you have a documentation need outside of the IDB database it's generally because you're trying to share information with other reverse engineers. For this, you may want to take a look at collabREate or the IDA toolbag. The unfortunate truth is that a lot of these projects tend to slow down or die completely due to a lack of interest from the original authors.
Now if your problem is completely centered around documentation, what I also find fairly common is to have header files with the function, class and structure definitions in them with doxygen-doxygen- or JavaDoc-formatted comments in them. You then use doxygen to generate automatic documentation and class diagrams. This way the documentation becomes completely living, self-maintaining and easily navigated.