Tool for code generation and documentation generation