code2flow is an experimental script which sweeps through your project source code, looking for function definitions, then does another sweep, looking for where those functions are called. It connects the dots and presents you with a flowchart estimating the functional structure of your program. It is especially useful for untangling spaghetti code and getting new developers up to speed. code2flow is experimental and meant to provide a rough overview of the structure of simple projects. Source code which is just a little esoteric will break this. Even with normal code, there are many known limitations and many outright bugs.
Doxer provides a wiki-based markup language for writing source code documentation and general purpose documents. It generates HTML output and also provides a Drupal input format module. The parser and HTML generator have a strong focus on robustness to support the full range of user sophistication found on general purpose Web sites. An extensive test suite accompanies the development.
Aephea is a text-based authoring tool for HTML. It enforces well-formedness with a simpler and stricter TeX-like syntax and provides useful extensions and abstractions with facilities for adding new ones. It emphasizes a single unified approach that stays close to HTML itself and promotes and utilizes CSS extensively. Abstractions such as dictionary stacks, arithmetic, and iteration are part of Aephea.
MkDoc is a C and C++ code documentation tool. It parse complex code and still produces clear documentation for developers and library users. Unlike most code generation tools, it does not simply write generated code documentation with pieces of user text inside. Instead it handles plain documentation files with sections and other constructs (like Texinfo or LaTeX) and inserts pieces of generated code documentation on request. Thus it does not enforce any way of structuring your document. It has been designed to parse advanced C++ constructs including class inheritance, template specialization, and template instantiation. XHTML, Texinfo, LaTeX, and DocBook output formats are supported.
Pipadoc extracts extracts special comments out of source files or plaintext files and let one define rules how to bring them into proper order. This is somewhat similar to Literate Programming, but it puts the emphasis back to the code, since the source is not extracted from a given "literate text", but the documentation is extracted from the source and then the structure of the generated documentation is defined by the programmer. Pipadoc is programming language and documentation system agnostic, all it requires is that the programming language has some kind of line or block comments in one can place doc statements. It provides a plugin system where one can extend functionality. Some plugins for asciidoc, index generation, and verbatim code sections are provided.
CodingTeam is a software forge that is lightweight and extensible. It provides a lot of collaborative tools. With this software forge, projects can benefit from basic features (such as screenshots, downloads, uploads, and news), communication features (such as chatrooms, forums, the OpenForge API, and Jabber/XMPP integration), and development features (such as a VCS code browser, a bug tracker, SVG statistics, timeline, and roadmap). Also provided are community tools (project browsing, tag clouds, notepad, and user profiles).
process-getopt is a wrapper around getopt(1) for bash that allows a developer to define command line options with their descriptions through a single function call. These definitions are then used in runtime processing of command line options as well as in generating help and man pages. This results in more internal consistency in bash scripts, particularly when they are maintained and changed later. It also saves a little time in coding and producing nicely formatted documentation. It is quite similar to GNU's argp in glibc for compiled languages. Samples and a manual are included.