API documentation generator