From 9a066eb0afeaae4429650ce54adf8e9a282935fc Mon Sep 17 00:00:00 2001 From: Vishesh 'ironeagle' Bangotra Date: Wed, 21 Jan 2026 18:30:25 +0530 Subject: [PATCH] doc changes --- docforge.nav.yml | 6 +- docs/docforge/cli/mcp/index.md | 3 - docs/docforge/cli/mcp/logic.md | 3 - docs/docforge/cli/mcp_utils.md | 3 + docs/docforge/cli/mkdocs/index.md | 3 - docs/docforge/cli/mkdocs/logic.md | 3 - docs/docforge/cli/mkdocs_utils.md | 3 + mcp_docs/index.json | 2 +- mcp_docs/modules/docforge.cli.commands.json | 136 ++-- mcp_docs/modules/docforge.cli.json | 648 +++++++++--------- mcp_docs/modules/docforge.cli.mcp.json | 129 ---- ...logic.json => docforge.cli.mcp_utils.json} | 34 +- mcp_docs/modules/docforge.cli.mkdocs.json | 157 ----- ...ic.json => docforge.cli.mkdocs_utils.json} | 42 +- mcp_docs/modules/docforge.json | 648 +++++++++--------- mcp_docs/nav.json | 16 +- mkdocs.yml | 6 +- 17 files changed, 751 insertions(+), 1091 deletions(-) delete mode 100644 docs/docforge/cli/mcp/index.md delete mode 100644 docs/docforge/cli/mcp/logic.md create mode 100644 docs/docforge/cli/mcp_utils.md delete mode 100644 docs/docforge/cli/mkdocs/index.md delete mode 100644 docs/docforge/cli/mkdocs/logic.md create mode 100644 docs/docforge/cli/mkdocs_utils.md delete mode 100644 mcp_docs/modules/docforge.cli.mcp.json rename mcp_docs/modules/{docforge.cli.mcp.logic.json => docforge.cli.mcp_utils.json} (84%) delete mode 100644 mcp_docs/modules/docforge.cli.mkdocs.json rename mcp_docs/modules/{docforge.cli.mkdocs.logic.json => docforge.cli.mkdocs_utils.json} (85%) diff --git a/docforge.nav.yml b/docforge.nav.yml index d83af04..9d484b5 100644 --- a/docforge.nav.yml +++ b/docforge.nav.yml @@ -22,7 +22,5 @@ groups: - docforge/cli/index.md - docforge/cli/main.md - docforge/cli/commands.md - - docforge/cli/mcp/index.md - - docforge/cli/mcp/logic.md - - docforge/cli/mkdocs/index.md - - docforge/cli/mkdocs/logic.md + - docforge/cli/mcp_utils.md + - docforge/cli/mkdocs_utils.md diff --git a/docs/docforge/cli/mcp/index.md b/docs/docforge/cli/mcp/index.md deleted file mode 100644 index 52ffe01..0000000 --- a/docs/docforge/cli/mcp/index.md +++ /dev/null @@ -1,3 +0,0 @@ -# Mcp - -::: docforge.cli.mcp diff --git a/docs/docforge/cli/mcp/logic.md b/docs/docforge/cli/mcp/logic.md deleted file mode 100644 index 92d9364..0000000 --- a/docs/docforge/cli/mcp/logic.md +++ /dev/null @@ -1,3 +0,0 @@ -# Logic - -::: docforge.cli.mcp.logic diff --git a/docs/docforge/cli/mcp_utils.md b/docs/docforge/cli/mcp_utils.md new file mode 100644 index 0000000..7987ffd --- /dev/null +++ b/docs/docforge/cli/mcp_utils.md @@ -0,0 +1,3 @@ +# Mcp Utils + +::: docforge.cli.mcp_utils diff --git a/docs/docforge/cli/mkdocs/index.md b/docs/docforge/cli/mkdocs/index.md deleted file mode 100644 index 217e141..0000000 --- a/docs/docforge/cli/mkdocs/index.md +++ /dev/null @@ -1,3 +0,0 @@ -# Mkdocs - -::: docforge.cli.mkdocs diff --git a/docs/docforge/cli/mkdocs/logic.md b/docs/docforge/cli/mkdocs/logic.md deleted file mode 100644 index 94909a7..0000000 --- a/docs/docforge/cli/mkdocs/logic.md +++ /dev/null @@ -1,3 +0,0 @@ -# Logic - -::: docforge.cli.mkdocs.logic diff --git a/docs/docforge/cli/mkdocs_utils.md b/docs/docforge/cli/mkdocs_utils.md new file mode 100644 index 0000000..2f2d3d9 --- /dev/null +++ b/docs/docforge/cli/mkdocs_utils.md @@ -0,0 +1,3 @@ +# Mkdocs Utils + +::: docforge.cli.mkdocs_utils diff --git a/mcp_docs/index.json b/mcp_docs/index.json index 6ce9145..22bf131 100644 --- a/mcp_docs/index.json +++ b/mcp_docs/index.json @@ -1,6 +1,6 @@ { "project": "docforge", "type": "docforge-model", - "modules_count": 24, + "modules_count": 22, "source": "docforge" } \ No newline at end of file diff --git a/mcp_docs/modules/docforge.cli.commands.json b/mcp_docs/modules/docforge.cli.commands.json index 701f8ad..3df039b 100644 --- a/mcp_docs/modules/docforge.cli.commands.json +++ b/mcp_docs/modules/docforge.cli.commands.json @@ -55,59 +55,59 @@ } } }, - "mkdocs_logic": { - "name": "mkdocs_logic", + "mkdocs_utils": { + "name": "mkdocs_utils", "kind": "module", - "path": "docforge.cli.commands.mkdocs_logic", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils", + "signature": "", "docstring": null, "members": { "Path": { "name": "Path", "kind": "alias", - "path": "docforge.cli.commands.mkdocs_logic.Path", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils.Path", + "signature": "", "docstring": null }, "resources": { "name": "resources", "kind": "alias", - "path": "docforge.cli.commands.mkdocs_logic.resources", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils.resources", + "signature": "", "docstring": null }, "click": { "name": "click", "kind": "alias", - "path": "docforge.cli.commands.mkdocs_logic.click", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils.click", + "signature": "", "docstring": null }, "yaml": { "name": "yaml", "kind": "alias", - "path": "docforge.cli.commands.mkdocs_logic.yaml", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils.yaml", + "signature": "", "docstring": null }, "GriffeLoader": { "name": "GriffeLoader", "kind": "class", - "path": "docforge.cli.commands.mkdocs_logic.GriffeLoader", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils.GriffeLoader", + "signature": "", "docstring": "Loads Python modules and extracts documentation using the Griffe introspection engine.", "members": { "load_project": { "name": "load_project", "kind": "function", - "path": "docforge.cli.commands.mkdocs_logic.GriffeLoader.load_project", + "path": "docforge.cli.commands.mkdocs_utils.GriffeLoader.load_project", "signature": "", "docstring": "Load multiple modules and combine them into a single Project models.\n\nArgs:\n module_paths: A list of dotted paths to the modules to load.\n project_name: Optional name for the project. Defaults to the first module name.\n skip_import_errors: If True, modules that fail to import will be skipped.\n\nReturns:\n A Project instance containing the loaded modules." }, "load_module": { "name": "load_module", "kind": "function", - "path": "docforge.cli.commands.mkdocs_logic.GriffeLoader.load_module", + "path": "docforge.cli.commands.mkdocs_utils.GriffeLoader.load_module", "signature": "", "docstring": "Load a single module and convert its introspection data into the docforge models.\n\nArgs:\n path: The dotted path of the module to load.\n\nReturns:\n A Module instance." } @@ -116,28 +116,28 @@ "discover_module_paths": { "name": "discover_module_paths", "kind": "function", - "path": "docforge.cli.commands.mkdocs_logic.discover_module_paths", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils.discover_module_paths", + "signature": "", "docstring": "Discover all Python modules under a package via filesystem traversal.\n\nRules:\n- Directory with __init__.py is treated as a package.\n- Any .py file is treated as a module.\n- All paths are converted to dotted module paths.\n\nArgs:\n module_name: The name of the package to discover.\n project_root: The root directory of the project. Defaults to current working directory.\n\nReturns:\n A sorted list of dotted module paths." }, "MkDocsRenderer": { "name": "MkDocsRenderer", "kind": "class", - "path": "docforge.cli.commands.mkdocs_logic.MkDocsRenderer", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils.MkDocsRenderer", + "signature": "", "docstring": "Renderer that generates Markdown source files formatted for the MkDocs\n'mkdocstrings' plugin.", "members": { "name": { "name": "name", "kind": "attribute", - "path": "docforge.cli.commands.mkdocs_logic.MkDocsRenderer.name", + "path": "docforge.cli.commands.mkdocs_utils.MkDocsRenderer.name", "signature": "", "docstring": null }, "generate_sources": { "name": "generate_sources", "kind": "function", - "path": "docforge.cli.commands.mkdocs_logic.MkDocsRenderer.generate_sources", + "path": "docforge.cli.commands.mkdocs_utils.MkDocsRenderer.generate_sources", "signature": "", "docstring": "Produce a set of Markdown files in the output directory based on the\nprovided Project models.\n\nArgs:\n project: The project models to render.\n out_dir: Target directory for documentation files." } @@ -146,28 +146,28 @@ "load_nav_spec": { "name": "load_nav_spec", "kind": "function", - "path": "docforge.cli.commands.mkdocs_logic.load_nav_spec", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils.load_nav_spec", + "signature": "", "docstring": "Utility function to load a NavSpec from a file.\n\nArgs:\n path: Path to the navigation specification file.\n\nReturns:\n A loaded NavSpec instance." }, "resolve_nav": { "name": "resolve_nav", "kind": "function", - "path": "docforge.cli.commands.mkdocs_logic.resolve_nav", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils.resolve_nav", + "signature": "", "docstring": "Create a ResolvedNav by processing a NavSpec against the filesystem.\nThis expands globs and validates the existence of referenced files.\n\nArgs:\n spec: The navigation specification to resolve.\n docs_root: The root directory for documentation files.\n\nReturns:\n A ResolvedNav instance.\n\nRaises:\n FileNotFoundError: If a pattern doesn't match any files or the docs_root doesn't exist." }, "MkDocsNavEmitter": { "name": "MkDocsNavEmitter", "kind": "class", - "path": "docforge.cli.commands.mkdocs_logic.MkDocsNavEmitter", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils.MkDocsNavEmitter", + "signature": "", "docstring": "Emitter responsible for transforming a ResolvedNav into an MkDocs-compatible\nnavigation structure.", "members": { "emit": { "name": "emit", "kind": "function", - "path": "docforge.cli.commands.mkdocs_logic.MkDocsNavEmitter.emit", + "path": "docforge.cli.commands.mkdocs_utils.MkDocsNavEmitter.emit", "signature": "", "docstring": "Generate a list of navigation entries for mkdocs.yml.\n\nArgs:\n nav: The resolved navigation data.\n\nReturns:\n A list of dictionary mappings representing the MkDocs navigation." } @@ -176,72 +176,72 @@ "generate_sources": { "name": "generate_sources", "kind": "function", - "path": "docforge.cli.commands.mkdocs_logic.generate_sources", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils.generate_sources", + "signature": "", "docstring": "Generate Markdown source files for the specified module." }, "generate_config": { "name": "generate_config", "kind": "function", - "path": "docforge.cli.commands.mkdocs_logic.generate_config", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils.generate_config", + "signature": "", "docstring": "Generate an mkdocs.yml configuration file." }, "build": { "name": "build", "kind": "function", - "path": "docforge.cli.commands.mkdocs_logic.build", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils.build", + "signature": "", "docstring": "Build the documentation site using MkDocs." }, "serve": { "name": "serve", "kind": "function", - "path": "docforge.cli.commands.mkdocs_logic.serve", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils.serve", + "signature": "", "docstring": "Serve the documentation site with live-reload using MkDocs." } } }, - "mcp_logic": { - "name": "mcp_logic", + "mcp_utils": { + "name": "mcp_utils", "kind": "module", - "path": "docforge.cli.commands.mcp_logic", - "signature": "", + "path": "docforge.cli.commands.mcp_utils", + "signature": "", "docstring": null, "members": { "Path": { "name": "Path", "kind": "alias", - "path": "docforge.cli.commands.mcp_logic.Path", - "signature": "", + "path": "docforge.cli.commands.mcp_utils.Path", + "signature": "", "docstring": null }, "click": { "name": "click", "kind": "alias", - "path": "docforge.cli.commands.mcp_logic.click", - "signature": "", + "path": "docforge.cli.commands.mcp_utils.click", + "signature": "", "docstring": null }, "GriffeLoader": { "name": "GriffeLoader", "kind": "class", - "path": "docforge.cli.commands.mcp_logic.GriffeLoader", - "signature": "", + "path": "docforge.cli.commands.mcp_utils.GriffeLoader", + "signature": "", "docstring": "Loads Python modules and extracts documentation using the Griffe introspection engine.", "members": { "load_project": { "name": "load_project", "kind": "function", - "path": "docforge.cli.commands.mcp_logic.GriffeLoader.load_project", + "path": "docforge.cli.commands.mcp_utils.GriffeLoader.load_project", "signature": "", "docstring": "Load multiple modules and combine them into a single Project models.\n\nArgs:\n module_paths: A list of dotted paths to the modules to load.\n project_name: Optional name for the project. Defaults to the first module name.\n skip_import_errors: If True, modules that fail to import will be skipped.\n\nReturns:\n A Project instance containing the loaded modules." }, "load_module": { "name": "load_module", "kind": "function", - "path": "docforge.cli.commands.mcp_logic.GriffeLoader.load_module", + "path": "docforge.cli.commands.mcp_utils.GriffeLoader.load_module", "signature": "", "docstring": "Load a single module and convert its introspection data into the docforge models.\n\nArgs:\n path: The dotted path of the module to load.\n\nReturns:\n A Module instance." } @@ -250,28 +250,28 @@ "discover_module_paths": { "name": "discover_module_paths", "kind": "function", - "path": "docforge.cli.commands.mcp_logic.discover_module_paths", - "signature": "", + "path": "docforge.cli.commands.mcp_utils.discover_module_paths", + "signature": "", "docstring": "Discover all Python modules under a package via filesystem traversal.\n\nRules:\n- Directory with __init__.py is treated as a package.\n- Any .py file is treated as a module.\n- All paths are converted to dotted module paths.\n\nArgs:\n module_name: The name of the package to discover.\n project_root: The root directory of the project. Defaults to current working directory.\n\nReturns:\n A sorted list of dotted module paths." }, "MCPRenderer": { "name": "MCPRenderer", "kind": "class", - "path": "docforge.cli.commands.mcp_logic.MCPRenderer", - "signature": "", + "path": "docforge.cli.commands.mcp_utils.MCPRenderer", + "signature": "", "docstring": "Renderer that emits MCP-native JSON resources from docforge models.", "members": { "name": { "name": "name", "kind": "attribute", - "path": "docforge.cli.commands.mcp_logic.MCPRenderer.name", + "path": "docforge.cli.commands.mcp_utils.MCPRenderer.name", "signature": "", "docstring": null }, "generate_sources": { "name": "generate_sources", "kind": "function", - "path": "docforge.cli.commands.mcp_logic.MCPRenderer.generate_sources", + "path": "docforge.cli.commands.mcp_utils.MCPRenderer.generate_sources", "signature": "", "docstring": "Generate MCP-compatible JSON resources and navigation for the project." } @@ -280,28 +280,28 @@ "MCPServer": { "name": "MCPServer", "kind": "class", - "path": "docforge.cli.commands.mcp_logic.MCPServer", - "signature": "", + "path": "docforge.cli.commands.mcp_utils.MCPServer", + "signature": "", "docstring": "MCP server for serving a pre-built MCP documentation bundle.", "members": { "mcp_root": { "name": "mcp_root", "kind": "attribute", - "path": "docforge.cli.commands.mcp_logic.MCPServer.mcp_root", + "path": "docforge.cli.commands.mcp_utils.MCPServer.mcp_root", "signature": "", "docstring": null }, "app": { "name": "app", "kind": "attribute", - "path": "docforge.cli.commands.mcp_logic.MCPServer.app", + "path": "docforge.cli.commands.mcp_utils.MCPServer.app", "signature": "", "docstring": null }, "run": { "name": "run", "kind": "function", - "path": "docforge.cli.commands.mcp_logic.MCPServer.run", + "path": "docforge.cli.commands.mcp_utils.MCPServer.run", "signature": "", "docstring": "Start the MCP server.\n\nArgs:\n transport: MCP transport (default: streamable-http)" } @@ -310,15 +310,15 @@ "generate_resources": { "name": "generate_resources", "kind": "function", - "path": "docforge.cli.commands.mcp_logic.generate_resources", - "signature": "", + "path": "docforge.cli.commands.mcp_utils.generate_resources", + "signature": "", "docstring": "Generate MCP-compatible documentation resources." }, "serve": { "name": "serve", "kind": "function", - "path": "docforge.cli.commands.mcp_logic.serve", - "signature": "", + "path": "docforge.cli.commands.mcp_utils.serve", + "signature": "", "docstring": "Serve MCP documentation." } } @@ -327,28 +327,28 @@ "name": "cli", "kind": "function", "path": "docforge.cli.commands.cli", - "signature": "", + "signature": "", "docstring": "doc-forge CLI: A tool for introspecting Python projects and generating\ndocumentation." }, "build": { "name": "build", "kind": "function", "path": "docforge.cli.commands.build", - "signature": "", + "signature": "", "docstring": "Build documentation (MkDocs site or MCP resources)." }, "serve": { "name": "serve", "kind": "function", "path": "docforge.cli.commands.serve", - "signature": "", + "signature": "", "docstring": "Serve documentation." }, "tree": { "name": "tree", "kind": "function", "path": "docforge.cli.commands.tree", - "signature": "", + "signature": "", "docstring": "Visualize the project structure." } } diff --git a/mcp_docs/modules/docforge.cli.json b/mcp_docs/modules/docforge.cli.json index f51e344..4d22e94 100644 --- a/mcp_docs/modules/docforge.cli.json +++ b/mcp_docs/modules/docforge.cli.json @@ -85,59 +85,59 @@ } } }, - "mkdocs_logic": { - "name": "mkdocs_logic", + "mkdocs_utils": { + "name": "mkdocs_utils", "kind": "module", - "path": "docforge.cli.commands.mkdocs_logic", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils", + "signature": "", "docstring": null, "members": { "Path": { "name": "Path", "kind": "alias", - "path": "docforge.cli.commands.mkdocs_logic.Path", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils.Path", + "signature": "", "docstring": null }, "resources": { "name": "resources", "kind": "alias", - "path": "docforge.cli.commands.mkdocs_logic.resources", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils.resources", + "signature": "", "docstring": null }, "click": { "name": "click", "kind": "alias", - "path": "docforge.cli.commands.mkdocs_logic.click", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils.click", + "signature": "", "docstring": null }, "yaml": { "name": "yaml", "kind": "alias", - "path": "docforge.cli.commands.mkdocs_logic.yaml", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils.yaml", + "signature": "", "docstring": null }, "GriffeLoader": { "name": "GriffeLoader", "kind": "class", - "path": "docforge.cli.commands.mkdocs_logic.GriffeLoader", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils.GriffeLoader", + "signature": "", "docstring": "Loads Python modules and extracts documentation using the Griffe introspection engine.", "members": { "load_project": { "name": "load_project", "kind": "function", - "path": "docforge.cli.commands.mkdocs_logic.GriffeLoader.load_project", + "path": "docforge.cli.commands.mkdocs_utils.GriffeLoader.load_project", "signature": "", "docstring": "Load multiple modules and combine them into a single Project models.\n\nArgs:\n module_paths: A list of dotted paths to the modules to load.\n project_name: Optional name for the project. Defaults to the first module name.\n skip_import_errors: If True, modules that fail to import will be skipped.\n\nReturns:\n A Project instance containing the loaded modules." }, "load_module": { "name": "load_module", "kind": "function", - "path": "docforge.cli.commands.mkdocs_logic.GriffeLoader.load_module", + "path": "docforge.cli.commands.mkdocs_utils.GriffeLoader.load_module", "signature": "", "docstring": "Load a single module and convert its introspection data into the docforge models.\n\nArgs:\n path: The dotted path of the module to load.\n\nReturns:\n A Module instance." } @@ -146,28 +146,28 @@ "discover_module_paths": { "name": "discover_module_paths", "kind": "function", - "path": "docforge.cli.commands.mkdocs_logic.discover_module_paths", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils.discover_module_paths", + "signature": "", "docstring": "Discover all Python modules under a package via filesystem traversal.\n\nRules:\n- Directory with __init__.py is treated as a package.\n- Any .py file is treated as a module.\n- All paths are converted to dotted module paths.\n\nArgs:\n module_name: The name of the package to discover.\n project_root: The root directory of the project. Defaults to current working directory.\n\nReturns:\n A sorted list of dotted module paths." }, "MkDocsRenderer": { "name": "MkDocsRenderer", "kind": "class", - "path": "docforge.cli.commands.mkdocs_logic.MkDocsRenderer", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils.MkDocsRenderer", + "signature": "", "docstring": "Renderer that generates Markdown source files formatted for the MkDocs\n'mkdocstrings' plugin.", "members": { "name": { "name": "name", "kind": "attribute", - "path": "docforge.cli.commands.mkdocs_logic.MkDocsRenderer.name", + "path": "docforge.cli.commands.mkdocs_utils.MkDocsRenderer.name", "signature": "", "docstring": null }, "generate_sources": { "name": "generate_sources", "kind": "function", - "path": "docforge.cli.commands.mkdocs_logic.MkDocsRenderer.generate_sources", + "path": "docforge.cli.commands.mkdocs_utils.MkDocsRenderer.generate_sources", "signature": "", "docstring": "Produce a set of Markdown files in the output directory based on the\nprovided Project models.\n\nArgs:\n project: The project models to render.\n out_dir: Target directory for documentation files." } @@ -176,28 +176,28 @@ "load_nav_spec": { "name": "load_nav_spec", "kind": "function", - "path": "docforge.cli.commands.mkdocs_logic.load_nav_spec", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils.load_nav_spec", + "signature": "", "docstring": "Utility function to load a NavSpec from a file.\n\nArgs:\n path: Path to the navigation specification file.\n\nReturns:\n A loaded NavSpec instance." }, "resolve_nav": { "name": "resolve_nav", "kind": "function", - "path": "docforge.cli.commands.mkdocs_logic.resolve_nav", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils.resolve_nav", + "signature": "", "docstring": "Create a ResolvedNav by processing a NavSpec against the filesystem.\nThis expands globs and validates the existence of referenced files.\n\nArgs:\n spec: The navigation specification to resolve.\n docs_root: The root directory for documentation files.\n\nReturns:\n A ResolvedNav instance.\n\nRaises:\n FileNotFoundError: If a pattern doesn't match any files or the docs_root doesn't exist." }, "MkDocsNavEmitter": { "name": "MkDocsNavEmitter", "kind": "class", - "path": "docforge.cli.commands.mkdocs_logic.MkDocsNavEmitter", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils.MkDocsNavEmitter", + "signature": "", "docstring": "Emitter responsible for transforming a ResolvedNav into an MkDocs-compatible\nnavigation structure.", "members": { "emit": { "name": "emit", "kind": "function", - "path": "docforge.cli.commands.mkdocs_logic.MkDocsNavEmitter.emit", + "path": "docforge.cli.commands.mkdocs_utils.MkDocsNavEmitter.emit", "signature": "", "docstring": "Generate a list of navigation entries for mkdocs.yml.\n\nArgs:\n nav: The resolved navigation data.\n\nReturns:\n A list of dictionary mappings representing the MkDocs navigation." } @@ -206,72 +206,72 @@ "generate_sources": { "name": "generate_sources", "kind": "function", - "path": "docforge.cli.commands.mkdocs_logic.generate_sources", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils.generate_sources", + "signature": "", "docstring": "Generate Markdown source files for the specified module." }, "generate_config": { "name": "generate_config", "kind": "function", - "path": "docforge.cli.commands.mkdocs_logic.generate_config", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils.generate_config", + "signature": "", "docstring": "Generate an mkdocs.yml configuration file." }, "build": { "name": "build", "kind": "function", - "path": "docforge.cli.commands.mkdocs_logic.build", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils.build", + "signature": "", "docstring": "Build the documentation site using MkDocs." }, "serve": { "name": "serve", "kind": "function", - "path": "docforge.cli.commands.mkdocs_logic.serve", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils.serve", + "signature": "", "docstring": "Serve the documentation site with live-reload using MkDocs." } } }, - "mcp_logic": { - "name": "mcp_logic", + "mcp_utils": { + "name": "mcp_utils", "kind": "module", - "path": "docforge.cli.commands.mcp_logic", - "signature": "", + "path": "docforge.cli.commands.mcp_utils", + "signature": "", "docstring": null, "members": { "Path": { "name": "Path", "kind": "alias", - "path": "docforge.cli.commands.mcp_logic.Path", - "signature": "", + "path": "docforge.cli.commands.mcp_utils.Path", + "signature": "", "docstring": null }, "click": { "name": "click", "kind": "alias", - "path": "docforge.cli.commands.mcp_logic.click", - "signature": "", + "path": "docforge.cli.commands.mcp_utils.click", + "signature": "", "docstring": null }, "GriffeLoader": { "name": "GriffeLoader", "kind": "class", - "path": "docforge.cli.commands.mcp_logic.GriffeLoader", - "signature": "", + "path": "docforge.cli.commands.mcp_utils.GriffeLoader", + "signature": "", "docstring": "Loads Python modules and extracts documentation using the Griffe introspection engine.", "members": { "load_project": { "name": "load_project", "kind": "function", - "path": "docforge.cli.commands.mcp_logic.GriffeLoader.load_project", + "path": "docforge.cli.commands.mcp_utils.GriffeLoader.load_project", "signature": "", "docstring": "Load multiple modules and combine them into a single Project models.\n\nArgs:\n module_paths: A list of dotted paths to the modules to load.\n project_name: Optional name for the project. Defaults to the first module name.\n skip_import_errors: If True, modules that fail to import will be skipped.\n\nReturns:\n A Project instance containing the loaded modules." }, "load_module": { "name": "load_module", "kind": "function", - "path": "docforge.cli.commands.mcp_logic.GriffeLoader.load_module", + "path": "docforge.cli.commands.mcp_utils.GriffeLoader.load_module", "signature": "", "docstring": "Load a single module and convert its introspection data into the docforge models.\n\nArgs:\n path: The dotted path of the module to load.\n\nReturns:\n A Module instance." } @@ -280,28 +280,28 @@ "discover_module_paths": { "name": "discover_module_paths", "kind": "function", - "path": "docforge.cli.commands.mcp_logic.discover_module_paths", - "signature": "", + "path": "docforge.cli.commands.mcp_utils.discover_module_paths", + "signature": "", "docstring": "Discover all Python modules under a package via filesystem traversal.\n\nRules:\n- Directory with __init__.py is treated as a package.\n- Any .py file is treated as a module.\n- All paths are converted to dotted module paths.\n\nArgs:\n module_name: The name of the package to discover.\n project_root: The root directory of the project. Defaults to current working directory.\n\nReturns:\n A sorted list of dotted module paths." }, "MCPRenderer": { "name": "MCPRenderer", "kind": "class", - "path": "docforge.cli.commands.mcp_logic.MCPRenderer", - "signature": "", + "path": "docforge.cli.commands.mcp_utils.MCPRenderer", + "signature": "", "docstring": "Renderer that emits MCP-native JSON resources from docforge models.", "members": { "name": { "name": "name", "kind": "attribute", - "path": "docforge.cli.commands.mcp_logic.MCPRenderer.name", + "path": "docforge.cli.commands.mcp_utils.MCPRenderer.name", "signature": "", "docstring": null }, "generate_sources": { "name": "generate_sources", "kind": "function", - "path": "docforge.cli.commands.mcp_logic.MCPRenderer.generate_sources", + "path": "docforge.cli.commands.mcp_utils.MCPRenderer.generate_sources", "signature": "", "docstring": "Generate MCP-compatible JSON resources and navigation for the project." } @@ -310,28 +310,28 @@ "MCPServer": { "name": "MCPServer", "kind": "class", - "path": "docforge.cli.commands.mcp_logic.MCPServer", - "signature": "", + "path": "docforge.cli.commands.mcp_utils.MCPServer", + "signature": "", "docstring": "MCP server for serving a pre-built MCP documentation bundle.", "members": { "mcp_root": { "name": "mcp_root", "kind": "attribute", - "path": "docforge.cli.commands.mcp_logic.MCPServer.mcp_root", + "path": "docforge.cli.commands.mcp_utils.MCPServer.mcp_root", "signature": "", "docstring": null }, "app": { "name": "app", "kind": "attribute", - "path": "docforge.cli.commands.mcp_logic.MCPServer.app", + "path": "docforge.cli.commands.mcp_utils.MCPServer.app", "signature": "", "docstring": null }, "run": { "name": "run", "kind": "function", - "path": "docforge.cli.commands.mcp_logic.MCPServer.run", + "path": "docforge.cli.commands.mcp_utils.MCPServer.run", "signature": "", "docstring": "Start the MCP server.\n\nArgs:\n transport: MCP transport (default: streamable-http)" } @@ -340,15 +340,15 @@ "generate_resources": { "name": "generate_resources", "kind": "function", - "path": "docforge.cli.commands.mcp_logic.generate_resources", - "signature": "", + "path": "docforge.cli.commands.mcp_utils.generate_resources", + "signature": "", "docstring": "Generate MCP-compatible documentation resources." }, "serve": { "name": "serve", "kind": "function", - "path": "docforge.cli.commands.mcp_logic.serve", - "signature": "", + "path": "docforge.cli.commands.mcp_utils.serve", + "signature": "", "docstring": "Serve MCP documentation." } } @@ -357,315 +357,297 @@ "name": "cli", "kind": "function", "path": "docforge.cli.commands.cli", - "signature": "", + "signature": "", "docstring": "doc-forge CLI: A tool for introspecting Python projects and generating\ndocumentation." }, "build": { "name": "build", "kind": "function", "path": "docforge.cli.commands.build", - "signature": "", + "signature": "", "docstring": "Build documentation (MkDocs site or MCP resources)." }, "serve": { "name": "serve", "kind": "function", "path": "docforge.cli.commands.serve", - "signature": "", + "signature": "", "docstring": "Serve documentation." }, "tree": { "name": "tree", "kind": "function", "path": "docforge.cli.commands.tree", - "signature": "", + "signature": "", "docstring": "Visualize the project structure." } } }, - "mcp": { - "name": "mcp", + "mcp_utils": { + "name": "mcp_utils", "kind": "module", - "path": "docforge.cli.mcp", + "path": "docforge.cli.mcp_utils", "signature": null, "docstring": null, "members": { - "logic": { - "name": "logic", - "kind": "module", - "path": "docforge.cli.mcp.logic", - "signature": null, - "docstring": null, + "Path": { + "name": "Path", + "kind": "alias", + "path": "docforge.cli.mcp_utils.Path", + "signature": "", + "docstring": null + }, + "click": { + "name": "click", + "kind": "alias", + "path": "docforge.cli.mcp_utils.click", + "signature": "", + "docstring": null + }, + "GriffeLoader": { + "name": "GriffeLoader", + "kind": "class", + "path": "docforge.cli.mcp_utils.GriffeLoader", + "signature": "", + "docstring": "Loads Python modules and extracts documentation using the Griffe introspection engine.", "members": { - "Path": { - "name": "Path", - "kind": "alias", - "path": "docforge.cli.mcp.logic.Path", - "signature": "", - "docstring": null - }, - "click": { - "name": "click", - "kind": "alias", - "path": "docforge.cli.mcp.logic.click", - "signature": "", - "docstring": null - }, - "GriffeLoader": { - "name": "GriffeLoader", - "kind": "class", - "path": "docforge.cli.mcp.logic.GriffeLoader", - "signature": "", - "docstring": "Loads Python modules and extracts documentation using the Griffe introspection engine.", - "members": { - "load_project": { - "name": "load_project", - "kind": "function", - "path": "docforge.cli.mcp.logic.GriffeLoader.load_project", - "signature": "", - "docstring": "Load multiple modules and combine them into a single Project models.\n\nArgs:\n module_paths: A list of dotted paths to the modules to load.\n project_name: Optional name for the project. Defaults to the first module name.\n skip_import_errors: If True, modules that fail to import will be skipped.\n\nReturns:\n A Project instance containing the loaded modules." - }, - "load_module": { - "name": "load_module", - "kind": "function", - "path": "docforge.cli.mcp.logic.GriffeLoader.load_module", - "signature": "", - "docstring": "Load a single module and convert its introspection data into the docforge models.\n\nArgs:\n path: The dotted path of the module to load.\n\nReturns:\n A Module instance." - } - } - }, - "discover_module_paths": { - "name": "discover_module_paths", + "load_project": { + "name": "load_project", "kind": "function", - "path": "docforge.cli.mcp.logic.discover_module_paths", - "signature": "", - "docstring": "Discover all Python modules under a package via filesystem traversal.\n\nRules:\n- Directory with __init__.py is treated as a package.\n- Any .py file is treated as a module.\n- All paths are converted to dotted module paths.\n\nArgs:\n module_name: The name of the package to discover.\n project_root: The root directory of the project. Defaults to current working directory.\n\nReturns:\n A sorted list of dotted module paths." + "path": "docforge.cli.mcp_utils.GriffeLoader.load_project", + "signature": "", + "docstring": "Load multiple modules and combine them into a single Project models.\n\nArgs:\n module_paths: A list of dotted paths to the modules to load.\n project_name: Optional name for the project. Defaults to the first module name.\n skip_import_errors: If True, modules that fail to import will be skipped.\n\nReturns:\n A Project instance containing the loaded modules." }, - "MCPRenderer": { - "name": "MCPRenderer", - "kind": "class", - "path": "docforge.cli.mcp.logic.MCPRenderer", - "signature": "", - "docstring": "Renderer that emits MCP-native JSON resources from docforge models.", - "members": { - "name": { - "name": "name", - "kind": "attribute", - "path": "docforge.cli.mcp.logic.MCPRenderer.name", - "signature": "", - "docstring": null - }, - "generate_sources": { - "name": "generate_sources", - "kind": "function", - "path": "docforge.cli.mcp.logic.MCPRenderer.generate_sources", - "signature": "", - "docstring": "Generate MCP-compatible JSON resources and navigation for the project." - } - } - }, - "MCPServer": { - "name": "MCPServer", - "kind": "class", - "path": "docforge.cli.mcp.logic.MCPServer", - "signature": "", - "docstring": "MCP server for serving a pre-built MCP documentation bundle.", - "members": { - "mcp_root": { - "name": "mcp_root", - "kind": "attribute", - "path": "docforge.cli.mcp.logic.MCPServer.mcp_root", - "signature": "", - "docstring": null - }, - "app": { - "name": "app", - "kind": "attribute", - "path": "docforge.cli.mcp.logic.MCPServer.app", - "signature": "", - "docstring": null - }, - "run": { - "name": "run", - "kind": "function", - "path": "docforge.cli.mcp.logic.MCPServer.run", - "signature": "", - "docstring": "Start the MCP server.\n\nArgs:\n transport: MCP transport (default: streamable-http)" - } - } - }, - "generate_resources": { - "name": "generate_resources", + "load_module": { + "name": "load_module", "kind": "function", - "path": "docforge.cli.mcp.logic.generate_resources", - "signature": "", - "docstring": "Generate MCP-compatible documentation resources." - }, - "serve": { - "name": "serve", - "kind": "function", - "path": "docforge.cli.mcp.logic.serve", - "signature": "", - "docstring": "Serve MCP documentation." + "path": "docforge.cli.mcp_utils.GriffeLoader.load_module", + "signature": "", + "docstring": "Load a single module and convert its introspection data into the docforge models.\n\nArgs:\n path: The dotted path of the module to load.\n\nReturns:\n A Module instance." } } - } - } - }, - "mkdocs": { - "name": "mkdocs", - "kind": "module", - "path": "docforge.cli.mkdocs", - "signature": null, - "docstring": null, - "members": { - "logic": { - "name": "logic", - "kind": "module", - "path": "docforge.cli.mkdocs.logic", - "signature": null, - "docstring": null, + }, + "discover_module_paths": { + "name": "discover_module_paths", + "kind": "function", + "path": "docforge.cli.mcp_utils.discover_module_paths", + "signature": "", + "docstring": "Discover all Python modules under a package via filesystem traversal.\n\nRules:\n- Directory with __init__.py is treated as a package.\n- Any .py file is treated as a module.\n- All paths are converted to dotted module paths.\n\nArgs:\n module_name: The name of the package to discover.\n project_root: The root directory of the project. Defaults to current working directory.\n\nReturns:\n A sorted list of dotted module paths." + }, + "MCPRenderer": { + "name": "MCPRenderer", + "kind": "class", + "path": "docforge.cli.mcp_utils.MCPRenderer", + "signature": "", + "docstring": "Renderer that emits MCP-native JSON resources from docforge models.", "members": { - "Path": { - "name": "Path", - "kind": "alias", - "path": "docforge.cli.mkdocs.logic.Path", - "signature": "", + "name": { + "name": "name", + "kind": "attribute", + "path": "docforge.cli.mcp_utils.MCPRenderer.name", + "signature": "", "docstring": null }, - "resources": { - "name": "resources", - "kind": "alias", - "path": "docforge.cli.mkdocs.logic.resources", - "signature": "", - "docstring": null - }, - "click": { - "name": "click", - "kind": "alias", - "path": "docforge.cli.mkdocs.logic.click", - "signature": "", - "docstring": null - }, - "yaml": { - "name": "yaml", - "kind": "alias", - "path": "docforge.cli.mkdocs.logic.yaml", - "signature": "", - "docstring": null - }, - "GriffeLoader": { - "name": "GriffeLoader", - "kind": "class", - "path": "docforge.cli.mkdocs.logic.GriffeLoader", - "signature": "", - "docstring": "Loads Python modules and extracts documentation using the Griffe introspection engine.", - "members": { - "load_project": { - "name": "load_project", - "kind": "function", - "path": "docforge.cli.mkdocs.logic.GriffeLoader.load_project", - "signature": "", - "docstring": "Load multiple modules and combine them into a single Project models.\n\nArgs:\n module_paths: A list of dotted paths to the modules to load.\n project_name: Optional name for the project. Defaults to the first module name.\n skip_import_errors: If True, modules that fail to import will be skipped.\n\nReturns:\n A Project instance containing the loaded modules." - }, - "load_module": { - "name": "load_module", - "kind": "function", - "path": "docforge.cli.mkdocs.logic.GriffeLoader.load_module", - "signature": "", - "docstring": "Load a single module and convert its introspection data into the docforge models.\n\nArgs:\n path: The dotted path of the module to load.\n\nReturns:\n A Module instance." - } - } - }, - "discover_module_paths": { - "name": "discover_module_paths", - "kind": "function", - "path": "docforge.cli.mkdocs.logic.discover_module_paths", - "signature": "", - "docstring": "Discover all Python modules under a package via filesystem traversal.\n\nRules:\n- Directory with __init__.py is treated as a package.\n- Any .py file is treated as a module.\n- All paths are converted to dotted module paths.\n\nArgs:\n module_name: The name of the package to discover.\n project_root: The root directory of the project. Defaults to current working directory.\n\nReturns:\n A sorted list of dotted module paths." - }, - "MkDocsRenderer": { - "name": "MkDocsRenderer", - "kind": "class", - "path": "docforge.cli.mkdocs.logic.MkDocsRenderer", - "signature": "", - "docstring": "Renderer that generates Markdown source files formatted for the MkDocs\n'mkdocstrings' plugin.", - "members": { - "name": { - "name": "name", - "kind": "attribute", - "path": "docforge.cli.mkdocs.logic.MkDocsRenderer.name", - "signature": "", - "docstring": null - }, - "generate_sources": { - "name": "generate_sources", - "kind": "function", - "path": "docforge.cli.mkdocs.logic.MkDocsRenderer.generate_sources", - "signature": "", - "docstring": "Produce a set of Markdown files in the output directory based on the\nprovided Project models.\n\nArgs:\n project: The project models to render.\n out_dir: Target directory for documentation files." - } - } - }, - "load_nav_spec": { - "name": "load_nav_spec", - "kind": "function", - "path": "docforge.cli.mkdocs.logic.load_nav_spec", - "signature": "", - "docstring": "Utility function to load a NavSpec from a file.\n\nArgs:\n path: Path to the navigation specification file.\n\nReturns:\n A loaded NavSpec instance." - }, - "resolve_nav": { - "name": "resolve_nav", - "kind": "function", - "path": "docforge.cli.mkdocs.logic.resolve_nav", - "signature": "", - "docstring": "Create a ResolvedNav by processing a NavSpec against the filesystem.\nThis expands globs and validates the existence of referenced files.\n\nArgs:\n spec: The navigation specification to resolve.\n docs_root: The root directory for documentation files.\n\nReturns:\n A ResolvedNav instance.\n\nRaises:\n FileNotFoundError: If a pattern doesn't match any files or the docs_root doesn't exist." - }, - "MkDocsNavEmitter": { - "name": "MkDocsNavEmitter", - "kind": "class", - "path": "docforge.cli.mkdocs.logic.MkDocsNavEmitter", - "signature": "", - "docstring": "Emitter responsible for transforming a ResolvedNav into an MkDocs-compatible\nnavigation structure.", - "members": { - "emit": { - "name": "emit", - "kind": "function", - "path": "docforge.cli.mkdocs.logic.MkDocsNavEmitter.emit", - "signature": "", - "docstring": "Generate a list of navigation entries for mkdocs.yml.\n\nArgs:\n nav: The resolved navigation data.\n\nReturns:\n A list of dictionary mappings representing the MkDocs navigation." - } - } - }, "generate_sources": { "name": "generate_sources", "kind": "function", - "path": "docforge.cli.mkdocs.logic.generate_sources", - "signature": "", - "docstring": "Generate Markdown source files for the specified module." - }, - "generate_config": { - "name": "generate_config", - "kind": "function", - "path": "docforge.cli.mkdocs.logic.generate_config", - "signature": "", - "docstring": "Generate an mkdocs.yml configuration file." - }, - "build": { - "name": "build", - "kind": "function", - "path": "docforge.cli.mkdocs.logic.build", - "signature": "", - "docstring": "Build the documentation site using MkDocs." - }, - "serve": { - "name": "serve", - "kind": "function", - "path": "docforge.cli.mkdocs.logic.serve", - "signature": "", - "docstring": "Serve the documentation site with live-reload using MkDocs." + "path": "docforge.cli.mcp_utils.MCPRenderer.generate_sources", + "signature": "", + "docstring": "Generate MCP-compatible JSON resources and navigation for the project." } } + }, + "MCPServer": { + "name": "MCPServer", + "kind": "class", + "path": "docforge.cli.mcp_utils.MCPServer", + "signature": "", + "docstring": "MCP server for serving a pre-built MCP documentation bundle.", + "members": { + "mcp_root": { + "name": "mcp_root", + "kind": "attribute", + "path": "docforge.cli.mcp_utils.MCPServer.mcp_root", + "signature": "", + "docstring": null + }, + "app": { + "name": "app", + "kind": "attribute", + "path": "docforge.cli.mcp_utils.MCPServer.app", + "signature": "", + "docstring": null + }, + "run": { + "name": "run", + "kind": "function", + "path": "docforge.cli.mcp_utils.MCPServer.run", + "signature": "", + "docstring": "Start the MCP server.\n\nArgs:\n transport: MCP transport (default: streamable-http)" + } + } + }, + "generate_resources": { + "name": "generate_resources", + "kind": "function", + "path": "docforge.cli.mcp_utils.generate_resources", + "signature": "", + "docstring": "Generate MCP-compatible documentation resources." + }, + "serve": { + "name": "serve", + "kind": "function", + "path": "docforge.cli.mcp_utils.serve", + "signature": "", + "docstring": "Serve MCP documentation." + } + } + }, + "mkdocs_utils": { + "name": "mkdocs_utils", + "kind": "module", + "path": "docforge.cli.mkdocs_utils", + "signature": null, + "docstring": null, + "members": { + "Path": { + "name": "Path", + "kind": "alias", + "path": "docforge.cli.mkdocs_utils.Path", + "signature": "", + "docstring": null + }, + "resources": { + "name": "resources", + "kind": "alias", + "path": "docforge.cli.mkdocs_utils.resources", + "signature": "", + "docstring": null + }, + "click": { + "name": "click", + "kind": "alias", + "path": "docforge.cli.mkdocs_utils.click", + "signature": "", + "docstring": null + }, + "yaml": { + "name": "yaml", + "kind": "alias", + "path": "docforge.cli.mkdocs_utils.yaml", + "signature": "", + "docstring": null + }, + "GriffeLoader": { + "name": "GriffeLoader", + "kind": "class", + "path": "docforge.cli.mkdocs_utils.GriffeLoader", + "signature": "", + "docstring": "Loads Python modules and extracts documentation using the Griffe introspection engine.", + "members": { + "load_project": { + "name": "load_project", + "kind": "function", + "path": "docforge.cli.mkdocs_utils.GriffeLoader.load_project", + "signature": "", + "docstring": "Load multiple modules and combine them into a single Project models.\n\nArgs:\n module_paths: A list of dotted paths to the modules to load.\n project_name: Optional name for the project. Defaults to the first module name.\n skip_import_errors: If True, modules that fail to import will be skipped.\n\nReturns:\n A Project instance containing the loaded modules." + }, + "load_module": { + "name": "load_module", + "kind": "function", + "path": "docforge.cli.mkdocs_utils.GriffeLoader.load_module", + "signature": "", + "docstring": "Load a single module and convert its introspection data into the docforge models.\n\nArgs:\n path: The dotted path of the module to load.\n\nReturns:\n A Module instance." + } + } + }, + "discover_module_paths": { + "name": "discover_module_paths", + "kind": "function", + "path": "docforge.cli.mkdocs_utils.discover_module_paths", + "signature": "", + "docstring": "Discover all Python modules under a package via filesystem traversal.\n\nRules:\n- Directory with __init__.py is treated as a package.\n- Any .py file is treated as a module.\n- All paths are converted to dotted module paths.\n\nArgs:\n module_name: The name of the package to discover.\n project_root: The root directory of the project. Defaults to current working directory.\n\nReturns:\n A sorted list of dotted module paths." + }, + "MkDocsRenderer": { + "name": "MkDocsRenderer", + "kind": "class", + "path": "docforge.cli.mkdocs_utils.MkDocsRenderer", + "signature": "", + "docstring": "Renderer that generates Markdown source files formatted for the MkDocs\n'mkdocstrings' plugin.", + "members": { + "name": { + "name": "name", + "kind": "attribute", + "path": "docforge.cli.mkdocs_utils.MkDocsRenderer.name", + "signature": "", + "docstring": null + }, + "generate_sources": { + "name": "generate_sources", + "kind": "function", + "path": "docforge.cli.mkdocs_utils.MkDocsRenderer.generate_sources", + "signature": "", + "docstring": "Produce a set of Markdown files in the output directory based on the\nprovided Project models.\n\nArgs:\n project: The project models to render.\n out_dir: Target directory for documentation files." + } + } + }, + "load_nav_spec": { + "name": "load_nav_spec", + "kind": "function", + "path": "docforge.cli.mkdocs_utils.load_nav_spec", + "signature": "", + "docstring": "Utility function to load a NavSpec from a file.\n\nArgs:\n path: Path to the navigation specification file.\n\nReturns:\n A loaded NavSpec instance." + }, + "resolve_nav": { + "name": "resolve_nav", + "kind": "function", + "path": "docforge.cli.mkdocs_utils.resolve_nav", + "signature": "", + "docstring": "Create a ResolvedNav by processing a NavSpec against the filesystem.\nThis expands globs and validates the existence of referenced files.\n\nArgs:\n spec: The navigation specification to resolve.\n docs_root: The root directory for documentation files.\n\nReturns:\n A ResolvedNav instance.\n\nRaises:\n FileNotFoundError: If a pattern doesn't match any files or the docs_root doesn't exist." + }, + "MkDocsNavEmitter": { + "name": "MkDocsNavEmitter", + "kind": "class", + "path": "docforge.cli.mkdocs_utils.MkDocsNavEmitter", + "signature": "", + "docstring": "Emitter responsible for transforming a ResolvedNav into an MkDocs-compatible\nnavigation structure.", + "members": { + "emit": { + "name": "emit", + "kind": "function", + "path": "docforge.cli.mkdocs_utils.MkDocsNavEmitter.emit", + "signature": "", + "docstring": "Generate a list of navigation entries for mkdocs.yml.\n\nArgs:\n nav: The resolved navigation data.\n\nReturns:\n A list of dictionary mappings representing the MkDocs navigation." + } + } + }, + "generate_sources": { + "name": "generate_sources", + "kind": "function", + "path": "docforge.cli.mkdocs_utils.generate_sources", + "signature": "", + "docstring": "Generate Markdown source files for the specified module." + }, + "generate_config": { + "name": "generate_config", + "kind": "function", + "path": "docforge.cli.mkdocs_utils.generate_config", + "signature": "", + "docstring": "Generate an mkdocs.yml configuration file." + }, + "build": { + "name": "build", + "kind": "function", + "path": "docforge.cli.mkdocs_utils.build", + "signature": "", + "docstring": "Build the documentation site using MkDocs." + }, + "serve": { + "name": "serve", + "kind": "function", + "path": "docforge.cli.mkdocs_utils.serve", + "signature": "", + "docstring": "Serve the documentation site with live-reload using MkDocs." } } } diff --git a/mcp_docs/modules/docforge.cli.mcp.json b/mcp_docs/modules/docforge.cli.mcp.json deleted file mode 100644 index abc1b8e..0000000 --- a/mcp_docs/modules/docforge.cli.mcp.json +++ /dev/null @@ -1,129 +0,0 @@ -{ - "module": "docforge.cli.mcp", - "content": { - "path": "docforge.cli.mcp", - "docstring": null, - "objects": { - "logic": { - "name": "logic", - "kind": "module", - "path": "docforge.cli.mcp.logic", - "signature": null, - "docstring": null, - "members": { - "Path": { - "name": "Path", - "kind": "alias", - "path": "docforge.cli.mcp.logic.Path", - "signature": "", - "docstring": null - }, - "click": { - "name": "click", - "kind": "alias", - "path": "docforge.cli.mcp.logic.click", - "signature": "", - "docstring": null - }, - "GriffeLoader": { - "name": "GriffeLoader", - "kind": "class", - "path": "docforge.cli.mcp.logic.GriffeLoader", - "signature": "", - "docstring": "Loads Python modules and extracts documentation using the Griffe introspection engine.", - "members": { - "load_project": { - "name": "load_project", - "kind": "function", - "path": "docforge.cli.mcp.logic.GriffeLoader.load_project", - "signature": "", - "docstring": "Load multiple modules and combine them into a single Project models.\n\nArgs:\n module_paths: A list of dotted paths to the modules to load.\n project_name: Optional name for the project. Defaults to the first module name.\n skip_import_errors: If True, modules that fail to import will be skipped.\n\nReturns:\n A Project instance containing the loaded modules." - }, - "load_module": { - "name": "load_module", - "kind": "function", - "path": "docforge.cli.mcp.logic.GriffeLoader.load_module", - "signature": "", - "docstring": "Load a single module and convert its introspection data into the docforge models.\n\nArgs:\n path: The dotted path of the module to load.\n\nReturns:\n A Module instance." - } - } - }, - "discover_module_paths": { - "name": "discover_module_paths", - "kind": "function", - "path": "docforge.cli.mcp.logic.discover_module_paths", - "signature": "", - "docstring": "Discover all Python modules under a package via filesystem traversal.\n\nRules:\n- Directory with __init__.py is treated as a package.\n- Any .py file is treated as a module.\n- All paths are converted to dotted module paths.\n\nArgs:\n module_name: The name of the package to discover.\n project_root: The root directory of the project. Defaults to current working directory.\n\nReturns:\n A sorted list of dotted module paths." - }, - "MCPRenderer": { - "name": "MCPRenderer", - "kind": "class", - "path": "docforge.cli.mcp.logic.MCPRenderer", - "signature": "", - "docstring": "Renderer that emits MCP-native JSON resources from docforge models.", - "members": { - "name": { - "name": "name", - "kind": "attribute", - "path": "docforge.cli.mcp.logic.MCPRenderer.name", - "signature": "", - "docstring": null - }, - "generate_sources": { - "name": "generate_sources", - "kind": "function", - "path": "docforge.cli.mcp.logic.MCPRenderer.generate_sources", - "signature": "", - "docstring": "Generate MCP-compatible JSON resources and navigation for the project." - } - } - }, - "MCPServer": { - "name": "MCPServer", - "kind": "class", - "path": "docforge.cli.mcp.logic.MCPServer", - "signature": "", - "docstring": "MCP server for serving a pre-built MCP documentation bundle.", - "members": { - "mcp_root": { - "name": "mcp_root", - "kind": "attribute", - "path": "docforge.cli.mcp.logic.MCPServer.mcp_root", - "signature": "", - "docstring": null - }, - "app": { - "name": "app", - "kind": "attribute", - "path": "docforge.cli.mcp.logic.MCPServer.app", - "signature": "", - "docstring": null - }, - "run": { - "name": "run", - "kind": "function", - "path": "docforge.cli.mcp.logic.MCPServer.run", - "signature": "", - "docstring": "Start the MCP server.\n\nArgs:\n transport: MCP transport (default: streamable-http)" - } - } - }, - "generate_resources": { - "name": "generate_resources", - "kind": "function", - "path": "docforge.cli.mcp.logic.generate_resources", - "signature": "", - "docstring": "Generate MCP-compatible documentation resources." - }, - "serve": { - "name": "serve", - "kind": "function", - "path": "docforge.cli.mcp.logic.serve", - "signature": "", - "docstring": "Serve MCP documentation." - } - } - } - } - } -} \ No newline at end of file diff --git a/mcp_docs/modules/docforge.cli.mcp.logic.json b/mcp_docs/modules/docforge.cli.mcp_utils.json similarity index 84% rename from mcp_docs/modules/docforge.cli.mcp.logic.json rename to mcp_docs/modules/docforge.cli.mcp_utils.json index 94f4006..b1cd895 100644 --- a/mcp_docs/modules/docforge.cli.mcp.logic.json +++ b/mcp_docs/modules/docforge.cli.mcp_utils.json @@ -1,41 +1,41 @@ { - "module": "docforge.cli.mcp.logic", + "module": "docforge.cli.mcp_utils", "content": { - "path": "docforge.cli.mcp.logic", + "path": "docforge.cli.mcp_utils", "docstring": null, "objects": { "Path": { "name": "Path", "kind": "alias", - "path": "docforge.cli.mcp.logic.Path", + "path": "docforge.cli.mcp_utils.Path", "signature": "", "docstring": null }, "click": { "name": "click", "kind": "alias", - "path": "docforge.cli.mcp.logic.click", + "path": "docforge.cli.mcp_utils.click", "signature": "", "docstring": null }, "GriffeLoader": { "name": "GriffeLoader", "kind": "class", - "path": "docforge.cli.mcp.logic.GriffeLoader", + "path": "docforge.cli.mcp_utils.GriffeLoader", "signature": "", "docstring": "Loads Python modules and extracts documentation using the Griffe introspection engine.", "members": { "load_project": { "name": "load_project", "kind": "function", - "path": "docforge.cli.mcp.logic.GriffeLoader.load_project", + "path": "docforge.cli.mcp_utils.GriffeLoader.load_project", "signature": "", "docstring": "Load multiple modules and combine them into a single Project models.\n\nArgs:\n module_paths: A list of dotted paths to the modules to load.\n project_name: Optional name for the project. Defaults to the first module name.\n skip_import_errors: If True, modules that fail to import will be skipped.\n\nReturns:\n A Project instance containing the loaded modules." }, "load_module": { "name": "load_module", "kind": "function", - "path": "docforge.cli.mcp.logic.GriffeLoader.load_module", + "path": "docforge.cli.mcp_utils.GriffeLoader.load_module", "signature": "", "docstring": "Load a single module and convert its introspection data into the docforge models.\n\nArgs:\n path: The dotted path of the module to load.\n\nReturns:\n A Module instance." } @@ -44,28 +44,28 @@ "discover_module_paths": { "name": "discover_module_paths", "kind": "function", - "path": "docforge.cli.mcp.logic.discover_module_paths", + "path": "docforge.cli.mcp_utils.discover_module_paths", "signature": "", "docstring": "Discover all Python modules under a package via filesystem traversal.\n\nRules:\n- Directory with __init__.py is treated as a package.\n- Any .py file is treated as a module.\n- All paths are converted to dotted module paths.\n\nArgs:\n module_name: The name of the package to discover.\n project_root: The root directory of the project. Defaults to current working directory.\n\nReturns:\n A sorted list of dotted module paths." }, "MCPRenderer": { "name": "MCPRenderer", "kind": "class", - "path": "docforge.cli.mcp.logic.MCPRenderer", + "path": "docforge.cli.mcp_utils.MCPRenderer", "signature": "", "docstring": "Renderer that emits MCP-native JSON resources from docforge models.", "members": { "name": { "name": "name", "kind": "attribute", - "path": "docforge.cli.mcp.logic.MCPRenderer.name", + "path": "docforge.cli.mcp_utils.MCPRenderer.name", "signature": "", "docstring": null }, "generate_sources": { "name": "generate_sources", "kind": "function", - "path": "docforge.cli.mcp.logic.MCPRenderer.generate_sources", + "path": "docforge.cli.mcp_utils.MCPRenderer.generate_sources", "signature": "", "docstring": "Generate MCP-compatible JSON resources and navigation for the project." } @@ -74,28 +74,28 @@ "MCPServer": { "name": "MCPServer", "kind": "class", - "path": "docforge.cli.mcp.logic.MCPServer", + "path": "docforge.cli.mcp_utils.MCPServer", "signature": "", "docstring": "MCP server for serving a pre-built MCP documentation bundle.", "members": { "mcp_root": { "name": "mcp_root", "kind": "attribute", - "path": "docforge.cli.mcp.logic.MCPServer.mcp_root", + "path": "docforge.cli.mcp_utils.MCPServer.mcp_root", "signature": "", "docstring": null }, "app": { "name": "app", "kind": "attribute", - "path": "docforge.cli.mcp.logic.MCPServer.app", + "path": "docforge.cli.mcp_utils.MCPServer.app", "signature": "", "docstring": null }, "run": { "name": "run", "kind": "function", - "path": "docforge.cli.mcp.logic.MCPServer.run", + "path": "docforge.cli.mcp_utils.MCPServer.run", "signature": "", "docstring": "Start the MCP server.\n\nArgs:\n transport: MCP transport (default: streamable-http)" } @@ -104,14 +104,14 @@ "generate_resources": { "name": "generate_resources", "kind": "function", - "path": "docforge.cli.mcp.logic.generate_resources", + "path": "docforge.cli.mcp_utils.generate_resources", "signature": "", "docstring": "Generate MCP-compatible documentation resources." }, "serve": { "name": "serve", "kind": "function", - "path": "docforge.cli.mcp.logic.serve", + "path": "docforge.cli.mcp_utils.serve", "signature": "", "docstring": "Serve MCP documentation." } diff --git a/mcp_docs/modules/docforge.cli.mkdocs.json b/mcp_docs/modules/docforge.cli.mkdocs.json deleted file mode 100644 index 266b836..0000000 --- a/mcp_docs/modules/docforge.cli.mkdocs.json +++ /dev/null @@ -1,157 +0,0 @@ -{ - "module": "docforge.cli.mkdocs", - "content": { - "path": "docforge.cli.mkdocs", - "docstring": null, - "objects": { - "logic": { - "name": "logic", - "kind": "module", - "path": "docforge.cli.mkdocs.logic", - "signature": null, - "docstring": null, - "members": { - "Path": { - "name": "Path", - "kind": "alias", - "path": "docforge.cli.mkdocs.logic.Path", - "signature": "", - "docstring": null - }, - "resources": { - "name": "resources", - "kind": "alias", - "path": "docforge.cli.mkdocs.logic.resources", - "signature": "", - "docstring": null - }, - "click": { - "name": "click", - "kind": "alias", - "path": "docforge.cli.mkdocs.logic.click", - "signature": "", - "docstring": null - }, - "yaml": { - "name": "yaml", - "kind": "alias", - "path": "docforge.cli.mkdocs.logic.yaml", - "signature": "", - "docstring": null - }, - "GriffeLoader": { - "name": "GriffeLoader", - "kind": "class", - "path": "docforge.cli.mkdocs.logic.GriffeLoader", - "signature": "", - "docstring": "Loads Python modules and extracts documentation using the Griffe introspection engine.", - "members": { - "load_project": { - "name": "load_project", - "kind": "function", - "path": "docforge.cli.mkdocs.logic.GriffeLoader.load_project", - "signature": "", - "docstring": "Load multiple modules and combine them into a single Project models.\n\nArgs:\n module_paths: A list of dotted paths to the modules to load.\n project_name: Optional name for the project. Defaults to the first module name.\n skip_import_errors: If True, modules that fail to import will be skipped.\n\nReturns:\n A Project instance containing the loaded modules." - }, - "load_module": { - "name": "load_module", - "kind": "function", - "path": "docforge.cli.mkdocs.logic.GriffeLoader.load_module", - "signature": "", - "docstring": "Load a single module and convert its introspection data into the docforge models.\n\nArgs:\n path: The dotted path of the module to load.\n\nReturns:\n A Module instance." - } - } - }, - "discover_module_paths": { - "name": "discover_module_paths", - "kind": "function", - "path": "docforge.cli.mkdocs.logic.discover_module_paths", - "signature": "", - "docstring": "Discover all Python modules under a package via filesystem traversal.\n\nRules:\n- Directory with __init__.py is treated as a package.\n- Any .py file is treated as a module.\n- All paths are converted to dotted module paths.\n\nArgs:\n module_name: The name of the package to discover.\n project_root: The root directory of the project. Defaults to current working directory.\n\nReturns:\n A sorted list of dotted module paths." - }, - "MkDocsRenderer": { - "name": "MkDocsRenderer", - "kind": "class", - "path": "docforge.cli.mkdocs.logic.MkDocsRenderer", - "signature": "", - "docstring": "Renderer that generates Markdown source files formatted for the MkDocs\n'mkdocstrings' plugin.", - "members": { - "name": { - "name": "name", - "kind": "attribute", - "path": "docforge.cli.mkdocs.logic.MkDocsRenderer.name", - "signature": "", - "docstring": null - }, - "generate_sources": { - "name": "generate_sources", - "kind": "function", - "path": "docforge.cli.mkdocs.logic.MkDocsRenderer.generate_sources", - "signature": "", - "docstring": "Produce a set of Markdown files in the output directory based on the\nprovided Project models.\n\nArgs:\n project: The project models to render.\n out_dir: Target directory for documentation files." - } - } - }, - "load_nav_spec": { - "name": "load_nav_spec", - "kind": "function", - "path": "docforge.cli.mkdocs.logic.load_nav_spec", - "signature": "", - "docstring": "Utility function to load a NavSpec from a file.\n\nArgs:\n path: Path to the navigation specification file.\n\nReturns:\n A loaded NavSpec instance." - }, - "resolve_nav": { - "name": "resolve_nav", - "kind": "function", - "path": "docforge.cli.mkdocs.logic.resolve_nav", - "signature": "", - "docstring": "Create a ResolvedNav by processing a NavSpec against the filesystem.\nThis expands globs and validates the existence of referenced files.\n\nArgs:\n spec: The navigation specification to resolve.\n docs_root: The root directory for documentation files.\n\nReturns:\n A ResolvedNav instance.\n\nRaises:\n FileNotFoundError: If a pattern doesn't match any files or the docs_root doesn't exist." - }, - "MkDocsNavEmitter": { - "name": "MkDocsNavEmitter", - "kind": "class", - "path": "docforge.cli.mkdocs.logic.MkDocsNavEmitter", - "signature": "", - "docstring": "Emitter responsible for transforming a ResolvedNav into an MkDocs-compatible\nnavigation structure.", - "members": { - "emit": { - "name": "emit", - "kind": "function", - "path": "docforge.cli.mkdocs.logic.MkDocsNavEmitter.emit", - "signature": "", - "docstring": "Generate a list of navigation entries for mkdocs.yml.\n\nArgs:\n nav: The resolved navigation data.\n\nReturns:\n A list of dictionary mappings representing the MkDocs navigation." - } - } - }, - "generate_sources": { - "name": "generate_sources", - "kind": "function", - "path": "docforge.cli.mkdocs.logic.generate_sources", - "signature": "", - "docstring": "Generate Markdown source files for the specified module." - }, - "generate_config": { - "name": "generate_config", - "kind": "function", - "path": "docforge.cli.mkdocs.logic.generate_config", - "signature": "", - "docstring": "Generate an mkdocs.yml configuration file." - }, - "build": { - "name": "build", - "kind": "function", - "path": "docforge.cli.mkdocs.logic.build", - "signature": "", - "docstring": "Build the documentation site using MkDocs." - }, - "serve": { - "name": "serve", - "kind": "function", - "path": "docforge.cli.mkdocs.logic.serve", - "signature": "", - "docstring": "Serve the documentation site with live-reload using MkDocs." - } - } - } - } - } -} \ No newline at end of file diff --git a/mcp_docs/modules/docforge.cli.mkdocs.logic.json b/mcp_docs/modules/docforge.cli.mkdocs_utils.json similarity index 85% rename from mcp_docs/modules/docforge.cli.mkdocs.logic.json rename to mcp_docs/modules/docforge.cli.mkdocs_utils.json index e40f422..88d3888 100644 --- a/mcp_docs/modules/docforge.cli.mkdocs.logic.json +++ b/mcp_docs/modules/docforge.cli.mkdocs_utils.json @@ -1,55 +1,55 @@ { - "module": "docforge.cli.mkdocs.logic", + "module": "docforge.cli.mkdocs_utils", "content": { - "path": "docforge.cli.mkdocs.logic", + "path": "docforge.cli.mkdocs_utils", "docstring": null, "objects": { "Path": { "name": "Path", "kind": "alias", - "path": "docforge.cli.mkdocs.logic.Path", + "path": "docforge.cli.mkdocs_utils.Path", "signature": "", "docstring": null }, "resources": { "name": "resources", "kind": "alias", - "path": "docforge.cli.mkdocs.logic.resources", + "path": "docforge.cli.mkdocs_utils.resources", "signature": "", "docstring": null }, "click": { "name": "click", "kind": "alias", - "path": "docforge.cli.mkdocs.logic.click", + "path": "docforge.cli.mkdocs_utils.click", "signature": "", "docstring": null }, "yaml": { "name": "yaml", "kind": "alias", - "path": "docforge.cli.mkdocs.logic.yaml", + "path": "docforge.cli.mkdocs_utils.yaml", "signature": "", "docstring": null }, "GriffeLoader": { "name": "GriffeLoader", "kind": "class", - "path": "docforge.cli.mkdocs.logic.GriffeLoader", + "path": "docforge.cli.mkdocs_utils.GriffeLoader", "signature": "", "docstring": "Loads Python modules and extracts documentation using the Griffe introspection engine.", "members": { "load_project": { "name": "load_project", "kind": "function", - "path": "docforge.cli.mkdocs.logic.GriffeLoader.load_project", + "path": "docforge.cli.mkdocs_utils.GriffeLoader.load_project", "signature": "", "docstring": "Load multiple modules and combine them into a single Project models.\n\nArgs:\n module_paths: A list of dotted paths to the modules to load.\n project_name: Optional name for the project. Defaults to the first module name.\n skip_import_errors: If True, modules that fail to import will be skipped.\n\nReturns:\n A Project instance containing the loaded modules." }, "load_module": { "name": "load_module", "kind": "function", - "path": "docforge.cli.mkdocs.logic.GriffeLoader.load_module", + "path": "docforge.cli.mkdocs_utils.GriffeLoader.load_module", "signature": "", "docstring": "Load a single module and convert its introspection data into the docforge models.\n\nArgs:\n path: The dotted path of the module to load.\n\nReturns:\n A Module instance." } @@ -58,28 +58,28 @@ "discover_module_paths": { "name": "discover_module_paths", "kind": "function", - "path": "docforge.cli.mkdocs.logic.discover_module_paths", + "path": "docforge.cli.mkdocs_utils.discover_module_paths", "signature": "", "docstring": "Discover all Python modules under a package via filesystem traversal.\n\nRules:\n- Directory with __init__.py is treated as a package.\n- Any .py file is treated as a module.\n- All paths are converted to dotted module paths.\n\nArgs:\n module_name: The name of the package to discover.\n project_root: The root directory of the project. Defaults to current working directory.\n\nReturns:\n A sorted list of dotted module paths." }, "MkDocsRenderer": { "name": "MkDocsRenderer", "kind": "class", - "path": "docforge.cli.mkdocs.logic.MkDocsRenderer", + "path": "docforge.cli.mkdocs_utils.MkDocsRenderer", "signature": "", "docstring": "Renderer that generates Markdown source files formatted for the MkDocs\n'mkdocstrings' plugin.", "members": { "name": { "name": "name", "kind": "attribute", - "path": "docforge.cli.mkdocs.logic.MkDocsRenderer.name", + "path": "docforge.cli.mkdocs_utils.MkDocsRenderer.name", "signature": "", "docstring": null }, "generate_sources": { "name": "generate_sources", "kind": "function", - "path": "docforge.cli.mkdocs.logic.MkDocsRenderer.generate_sources", + "path": "docforge.cli.mkdocs_utils.MkDocsRenderer.generate_sources", "signature": "", "docstring": "Produce a set of Markdown files in the output directory based on the\nprovided Project models.\n\nArgs:\n project: The project models to render.\n out_dir: Target directory for documentation files." } @@ -88,28 +88,28 @@ "load_nav_spec": { "name": "load_nav_spec", "kind": "function", - "path": "docforge.cli.mkdocs.logic.load_nav_spec", + "path": "docforge.cli.mkdocs_utils.load_nav_spec", "signature": "", "docstring": "Utility function to load a NavSpec from a file.\n\nArgs:\n path: Path to the navigation specification file.\n\nReturns:\n A loaded NavSpec instance." }, "resolve_nav": { "name": "resolve_nav", "kind": "function", - "path": "docforge.cli.mkdocs.logic.resolve_nav", + "path": "docforge.cli.mkdocs_utils.resolve_nav", "signature": "", "docstring": "Create a ResolvedNav by processing a NavSpec against the filesystem.\nThis expands globs and validates the existence of referenced files.\n\nArgs:\n spec: The navigation specification to resolve.\n docs_root: The root directory for documentation files.\n\nReturns:\n A ResolvedNav instance.\n\nRaises:\n FileNotFoundError: If a pattern doesn't match any files or the docs_root doesn't exist." }, "MkDocsNavEmitter": { "name": "MkDocsNavEmitter", "kind": "class", - "path": "docforge.cli.mkdocs.logic.MkDocsNavEmitter", + "path": "docforge.cli.mkdocs_utils.MkDocsNavEmitter", "signature": "", "docstring": "Emitter responsible for transforming a ResolvedNav into an MkDocs-compatible\nnavigation structure.", "members": { "emit": { "name": "emit", "kind": "function", - "path": "docforge.cli.mkdocs.logic.MkDocsNavEmitter.emit", + "path": "docforge.cli.mkdocs_utils.MkDocsNavEmitter.emit", "signature": "", "docstring": "Generate a list of navigation entries for mkdocs.yml.\n\nArgs:\n nav: The resolved navigation data.\n\nReturns:\n A list of dictionary mappings representing the MkDocs navigation." } @@ -118,28 +118,28 @@ "generate_sources": { "name": "generate_sources", "kind": "function", - "path": "docforge.cli.mkdocs.logic.generate_sources", + "path": "docforge.cli.mkdocs_utils.generate_sources", "signature": "", "docstring": "Generate Markdown source files for the specified module." }, "generate_config": { "name": "generate_config", "kind": "function", - "path": "docforge.cli.mkdocs.logic.generate_config", + "path": "docforge.cli.mkdocs_utils.generate_config", "signature": "", "docstring": "Generate an mkdocs.yml configuration file." }, "build": { "name": "build", "kind": "function", - "path": "docforge.cli.mkdocs.logic.build", + "path": "docforge.cli.mkdocs_utils.build", "signature": "", "docstring": "Build the documentation site using MkDocs." }, "serve": { "name": "serve", "kind": "function", - "path": "docforge.cli.mkdocs.logic.serve", + "path": "docforge.cli.mkdocs_utils.serve", "signature": "", "docstring": "Serve the documentation site with live-reload using MkDocs." } diff --git a/mcp_docs/modules/docforge.json b/mcp_docs/modules/docforge.json index f166173..6d9ff5d 100644 --- a/mcp_docs/modules/docforge.json +++ b/mcp_docs/modules/docforge.json @@ -191,59 +191,59 @@ } } }, - "mkdocs_logic": { - "name": "mkdocs_logic", + "mkdocs_utils": { + "name": "mkdocs_utils", "kind": "module", - "path": "docforge.cli.commands.mkdocs_logic", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils", + "signature": "", "docstring": null, "members": { "Path": { "name": "Path", "kind": "alias", - "path": "docforge.cli.commands.mkdocs_logic.Path", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils.Path", + "signature": "", "docstring": null }, "resources": { "name": "resources", "kind": "alias", - "path": "docforge.cli.commands.mkdocs_logic.resources", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils.resources", + "signature": "", "docstring": null }, "click": { "name": "click", "kind": "alias", - "path": "docforge.cli.commands.mkdocs_logic.click", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils.click", + "signature": "", "docstring": null }, "yaml": { "name": "yaml", "kind": "alias", - "path": "docforge.cli.commands.mkdocs_logic.yaml", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils.yaml", + "signature": "", "docstring": null }, "GriffeLoader": { "name": "GriffeLoader", "kind": "class", - "path": "docforge.cli.commands.mkdocs_logic.GriffeLoader", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils.GriffeLoader", + "signature": "", "docstring": "Loads Python modules and extracts documentation using the Griffe introspection engine.", "members": { "load_project": { "name": "load_project", "kind": "function", - "path": "docforge.cli.commands.mkdocs_logic.GriffeLoader.load_project", + "path": "docforge.cli.commands.mkdocs_utils.GriffeLoader.load_project", "signature": "", "docstring": "Load multiple modules and combine them into a single Project models.\n\nArgs:\n module_paths: A list of dotted paths to the modules to load.\n project_name: Optional name for the project. Defaults to the first module name.\n skip_import_errors: If True, modules that fail to import will be skipped.\n\nReturns:\n A Project instance containing the loaded modules." }, "load_module": { "name": "load_module", "kind": "function", - "path": "docforge.cli.commands.mkdocs_logic.GriffeLoader.load_module", + "path": "docforge.cli.commands.mkdocs_utils.GriffeLoader.load_module", "signature": "", "docstring": "Load a single module and convert its introspection data into the docforge models.\n\nArgs:\n path: The dotted path of the module to load.\n\nReturns:\n A Module instance." } @@ -252,28 +252,28 @@ "discover_module_paths": { "name": "discover_module_paths", "kind": "function", - "path": "docforge.cli.commands.mkdocs_logic.discover_module_paths", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils.discover_module_paths", + "signature": "", "docstring": "Discover all Python modules under a package via filesystem traversal.\n\nRules:\n- Directory with __init__.py is treated as a package.\n- Any .py file is treated as a module.\n- All paths are converted to dotted module paths.\n\nArgs:\n module_name: The name of the package to discover.\n project_root: The root directory of the project. Defaults to current working directory.\n\nReturns:\n A sorted list of dotted module paths." }, "MkDocsRenderer": { "name": "MkDocsRenderer", "kind": "class", - "path": "docforge.cli.commands.mkdocs_logic.MkDocsRenderer", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils.MkDocsRenderer", + "signature": "", "docstring": "Renderer that generates Markdown source files formatted for the MkDocs\n'mkdocstrings' plugin.", "members": { "name": { "name": "name", "kind": "attribute", - "path": "docforge.cli.commands.mkdocs_logic.MkDocsRenderer.name", + "path": "docforge.cli.commands.mkdocs_utils.MkDocsRenderer.name", "signature": "", "docstring": null }, "generate_sources": { "name": "generate_sources", "kind": "function", - "path": "docforge.cli.commands.mkdocs_logic.MkDocsRenderer.generate_sources", + "path": "docforge.cli.commands.mkdocs_utils.MkDocsRenderer.generate_sources", "signature": "", "docstring": "Produce a set of Markdown files in the output directory based on the\nprovided Project models.\n\nArgs:\n project: The project models to render.\n out_dir: Target directory for documentation files." } @@ -282,28 +282,28 @@ "load_nav_spec": { "name": "load_nav_spec", "kind": "function", - "path": "docforge.cli.commands.mkdocs_logic.load_nav_spec", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils.load_nav_spec", + "signature": "", "docstring": "Utility function to load a NavSpec from a file.\n\nArgs:\n path: Path to the navigation specification file.\n\nReturns:\n A loaded NavSpec instance." }, "resolve_nav": { "name": "resolve_nav", "kind": "function", - "path": "docforge.cli.commands.mkdocs_logic.resolve_nav", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils.resolve_nav", + "signature": "", "docstring": "Create a ResolvedNav by processing a NavSpec against the filesystem.\nThis expands globs and validates the existence of referenced files.\n\nArgs:\n spec: The navigation specification to resolve.\n docs_root: The root directory for documentation files.\n\nReturns:\n A ResolvedNav instance.\n\nRaises:\n FileNotFoundError: If a pattern doesn't match any files or the docs_root doesn't exist." }, "MkDocsNavEmitter": { "name": "MkDocsNavEmitter", "kind": "class", - "path": "docforge.cli.commands.mkdocs_logic.MkDocsNavEmitter", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils.MkDocsNavEmitter", + "signature": "", "docstring": "Emitter responsible for transforming a ResolvedNav into an MkDocs-compatible\nnavigation structure.", "members": { "emit": { "name": "emit", "kind": "function", - "path": "docforge.cli.commands.mkdocs_logic.MkDocsNavEmitter.emit", + "path": "docforge.cli.commands.mkdocs_utils.MkDocsNavEmitter.emit", "signature": "", "docstring": "Generate a list of navigation entries for mkdocs.yml.\n\nArgs:\n nav: The resolved navigation data.\n\nReturns:\n A list of dictionary mappings representing the MkDocs navigation." } @@ -312,72 +312,72 @@ "generate_sources": { "name": "generate_sources", "kind": "function", - "path": "docforge.cli.commands.mkdocs_logic.generate_sources", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils.generate_sources", + "signature": "", "docstring": "Generate Markdown source files for the specified module." }, "generate_config": { "name": "generate_config", "kind": "function", - "path": "docforge.cli.commands.mkdocs_logic.generate_config", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils.generate_config", + "signature": "", "docstring": "Generate an mkdocs.yml configuration file." }, "build": { "name": "build", "kind": "function", - "path": "docforge.cli.commands.mkdocs_logic.build", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils.build", + "signature": "", "docstring": "Build the documentation site using MkDocs." }, "serve": { "name": "serve", "kind": "function", - "path": "docforge.cli.commands.mkdocs_logic.serve", - "signature": "", + "path": "docforge.cli.commands.mkdocs_utils.serve", + "signature": "", "docstring": "Serve the documentation site with live-reload using MkDocs." } } }, - "mcp_logic": { - "name": "mcp_logic", + "mcp_utils": { + "name": "mcp_utils", "kind": "module", - "path": "docforge.cli.commands.mcp_logic", - "signature": "", + "path": "docforge.cli.commands.mcp_utils", + "signature": "", "docstring": null, "members": { "Path": { "name": "Path", "kind": "alias", - "path": "docforge.cli.commands.mcp_logic.Path", - "signature": "", + "path": "docforge.cli.commands.mcp_utils.Path", + "signature": "", "docstring": null }, "click": { "name": "click", "kind": "alias", - "path": "docforge.cli.commands.mcp_logic.click", - "signature": "", + "path": "docforge.cli.commands.mcp_utils.click", + "signature": "", "docstring": null }, "GriffeLoader": { "name": "GriffeLoader", "kind": "class", - "path": "docforge.cli.commands.mcp_logic.GriffeLoader", - "signature": "", + "path": "docforge.cli.commands.mcp_utils.GriffeLoader", + "signature": "", "docstring": "Loads Python modules and extracts documentation using the Griffe introspection engine.", "members": { "load_project": { "name": "load_project", "kind": "function", - "path": "docforge.cli.commands.mcp_logic.GriffeLoader.load_project", + "path": "docforge.cli.commands.mcp_utils.GriffeLoader.load_project", "signature": "", "docstring": "Load multiple modules and combine them into a single Project models.\n\nArgs:\n module_paths: A list of dotted paths to the modules to load.\n project_name: Optional name for the project. Defaults to the first module name.\n skip_import_errors: If True, modules that fail to import will be skipped.\n\nReturns:\n A Project instance containing the loaded modules." }, "load_module": { "name": "load_module", "kind": "function", - "path": "docforge.cli.commands.mcp_logic.GriffeLoader.load_module", + "path": "docforge.cli.commands.mcp_utils.GriffeLoader.load_module", "signature": "", "docstring": "Load a single module and convert its introspection data into the docforge models.\n\nArgs:\n path: The dotted path of the module to load.\n\nReturns:\n A Module instance." } @@ -386,28 +386,28 @@ "discover_module_paths": { "name": "discover_module_paths", "kind": "function", - "path": "docforge.cli.commands.mcp_logic.discover_module_paths", - "signature": "", + "path": "docforge.cli.commands.mcp_utils.discover_module_paths", + "signature": "", "docstring": "Discover all Python modules under a package via filesystem traversal.\n\nRules:\n- Directory with __init__.py is treated as a package.\n- Any .py file is treated as a module.\n- All paths are converted to dotted module paths.\n\nArgs:\n module_name: The name of the package to discover.\n project_root: The root directory of the project. Defaults to current working directory.\n\nReturns:\n A sorted list of dotted module paths." }, "MCPRenderer": { "name": "MCPRenderer", "kind": "class", - "path": "docforge.cli.commands.mcp_logic.MCPRenderer", - "signature": "", + "path": "docforge.cli.commands.mcp_utils.MCPRenderer", + "signature": "", "docstring": "Renderer that emits MCP-native JSON resources from docforge models.", "members": { "name": { "name": "name", "kind": "attribute", - "path": "docforge.cli.commands.mcp_logic.MCPRenderer.name", + "path": "docforge.cli.commands.mcp_utils.MCPRenderer.name", "signature": "", "docstring": null }, "generate_sources": { "name": "generate_sources", "kind": "function", - "path": "docforge.cli.commands.mcp_logic.MCPRenderer.generate_sources", + "path": "docforge.cli.commands.mcp_utils.MCPRenderer.generate_sources", "signature": "", "docstring": "Generate MCP-compatible JSON resources and navigation for the project." } @@ -416,28 +416,28 @@ "MCPServer": { "name": "MCPServer", "kind": "class", - "path": "docforge.cli.commands.mcp_logic.MCPServer", - "signature": "", + "path": "docforge.cli.commands.mcp_utils.MCPServer", + "signature": "", "docstring": "MCP server for serving a pre-built MCP documentation bundle.", "members": { "mcp_root": { "name": "mcp_root", "kind": "attribute", - "path": "docforge.cli.commands.mcp_logic.MCPServer.mcp_root", + "path": "docforge.cli.commands.mcp_utils.MCPServer.mcp_root", "signature": "", "docstring": null }, "app": { "name": "app", "kind": "attribute", - "path": "docforge.cli.commands.mcp_logic.MCPServer.app", + "path": "docforge.cli.commands.mcp_utils.MCPServer.app", "signature": "", "docstring": null }, "run": { "name": "run", "kind": "function", - "path": "docforge.cli.commands.mcp_logic.MCPServer.run", + "path": "docforge.cli.commands.mcp_utils.MCPServer.run", "signature": "", "docstring": "Start the MCP server.\n\nArgs:\n transport: MCP transport (default: streamable-http)" } @@ -446,15 +446,15 @@ "generate_resources": { "name": "generate_resources", "kind": "function", - "path": "docforge.cli.commands.mcp_logic.generate_resources", - "signature": "", + "path": "docforge.cli.commands.mcp_utils.generate_resources", + "signature": "", "docstring": "Generate MCP-compatible documentation resources." }, "serve": { "name": "serve", "kind": "function", - "path": "docforge.cli.commands.mcp_logic.serve", - "signature": "", + "path": "docforge.cli.commands.mcp_utils.serve", + "signature": "", "docstring": "Serve MCP documentation." } } @@ -463,315 +463,297 @@ "name": "cli", "kind": "function", "path": "docforge.cli.commands.cli", - "signature": "", + "signature": "", "docstring": "doc-forge CLI: A tool for introspecting Python projects and generating\ndocumentation." }, "build": { "name": "build", "kind": "function", "path": "docforge.cli.commands.build", - "signature": "", + "signature": "", "docstring": "Build documentation (MkDocs site or MCP resources)." }, "serve": { "name": "serve", "kind": "function", "path": "docforge.cli.commands.serve", - "signature": "", + "signature": "", "docstring": "Serve documentation." }, "tree": { "name": "tree", "kind": "function", "path": "docforge.cli.commands.tree", - "signature": "", + "signature": "", "docstring": "Visualize the project structure." } } }, - "mcp": { - "name": "mcp", + "mcp_utils": { + "name": "mcp_utils", "kind": "module", - "path": "docforge.cli.mcp", + "path": "docforge.cli.mcp_utils", "signature": null, "docstring": null, "members": { - "logic": { - "name": "logic", - "kind": "module", - "path": "docforge.cli.mcp.logic", - "signature": null, - "docstring": null, + "Path": { + "name": "Path", + "kind": "alias", + "path": "docforge.cli.mcp_utils.Path", + "signature": "", + "docstring": null + }, + "click": { + "name": "click", + "kind": "alias", + "path": "docforge.cli.mcp_utils.click", + "signature": "", + "docstring": null + }, + "GriffeLoader": { + "name": "GriffeLoader", + "kind": "class", + "path": "docforge.cli.mcp_utils.GriffeLoader", + "signature": "", + "docstring": "Loads Python modules and extracts documentation using the Griffe introspection engine.", "members": { - "Path": { - "name": "Path", - "kind": "alias", - "path": "docforge.cli.mcp.logic.Path", - "signature": "", - "docstring": null - }, - "click": { - "name": "click", - "kind": "alias", - "path": "docforge.cli.mcp.logic.click", - "signature": "", - "docstring": null - }, - "GriffeLoader": { - "name": "GriffeLoader", - "kind": "class", - "path": "docforge.cli.mcp.logic.GriffeLoader", - "signature": "", - "docstring": "Loads Python modules and extracts documentation using the Griffe introspection engine.", - "members": { - "load_project": { - "name": "load_project", - "kind": "function", - "path": "docforge.cli.mcp.logic.GriffeLoader.load_project", - "signature": "", - "docstring": "Load multiple modules and combine them into a single Project models.\n\nArgs:\n module_paths: A list of dotted paths to the modules to load.\n project_name: Optional name for the project. Defaults to the first module name.\n skip_import_errors: If True, modules that fail to import will be skipped.\n\nReturns:\n A Project instance containing the loaded modules." - }, - "load_module": { - "name": "load_module", - "kind": "function", - "path": "docforge.cli.mcp.logic.GriffeLoader.load_module", - "signature": "", - "docstring": "Load a single module and convert its introspection data into the docforge models.\n\nArgs:\n path: The dotted path of the module to load.\n\nReturns:\n A Module instance." - } - } - }, - "discover_module_paths": { - "name": "discover_module_paths", + "load_project": { + "name": "load_project", "kind": "function", - "path": "docforge.cli.mcp.logic.discover_module_paths", - "signature": "", - "docstring": "Discover all Python modules under a package via filesystem traversal.\n\nRules:\n- Directory with __init__.py is treated as a package.\n- Any .py file is treated as a module.\n- All paths are converted to dotted module paths.\n\nArgs:\n module_name: The name of the package to discover.\n project_root: The root directory of the project. Defaults to current working directory.\n\nReturns:\n A sorted list of dotted module paths." + "path": "docforge.cli.mcp_utils.GriffeLoader.load_project", + "signature": "", + "docstring": "Load multiple modules and combine them into a single Project models.\n\nArgs:\n module_paths: A list of dotted paths to the modules to load.\n project_name: Optional name for the project. Defaults to the first module name.\n skip_import_errors: If True, modules that fail to import will be skipped.\n\nReturns:\n A Project instance containing the loaded modules." }, - "MCPRenderer": { - "name": "MCPRenderer", - "kind": "class", - "path": "docforge.cli.mcp.logic.MCPRenderer", - "signature": "", - "docstring": "Renderer that emits MCP-native JSON resources from docforge models.", - "members": { - "name": { - "name": "name", - "kind": "attribute", - "path": "docforge.cli.mcp.logic.MCPRenderer.name", - "signature": "", - "docstring": null - }, - "generate_sources": { - "name": "generate_sources", - "kind": "function", - "path": "docforge.cli.mcp.logic.MCPRenderer.generate_sources", - "signature": "", - "docstring": "Generate MCP-compatible JSON resources and navigation for the project." - } - } - }, - "MCPServer": { - "name": "MCPServer", - "kind": "class", - "path": "docforge.cli.mcp.logic.MCPServer", - "signature": "", - "docstring": "MCP server for serving a pre-built MCP documentation bundle.", - "members": { - "mcp_root": { - "name": "mcp_root", - "kind": "attribute", - "path": "docforge.cli.mcp.logic.MCPServer.mcp_root", - "signature": "", - "docstring": null - }, - "app": { - "name": "app", - "kind": "attribute", - "path": "docforge.cli.mcp.logic.MCPServer.app", - "signature": "", - "docstring": null - }, - "run": { - "name": "run", - "kind": "function", - "path": "docforge.cli.mcp.logic.MCPServer.run", - "signature": "", - "docstring": "Start the MCP server.\n\nArgs:\n transport: MCP transport (default: streamable-http)" - } - } - }, - "generate_resources": { - "name": "generate_resources", + "load_module": { + "name": "load_module", "kind": "function", - "path": "docforge.cli.mcp.logic.generate_resources", - "signature": "", - "docstring": "Generate MCP-compatible documentation resources." - }, - "serve": { - "name": "serve", - "kind": "function", - "path": "docforge.cli.mcp.logic.serve", - "signature": "", - "docstring": "Serve MCP documentation." + "path": "docforge.cli.mcp_utils.GriffeLoader.load_module", + "signature": "", + "docstring": "Load a single module and convert its introspection data into the docforge models.\n\nArgs:\n path: The dotted path of the module to load.\n\nReturns:\n A Module instance." } } - } - } - }, - "mkdocs": { - "name": "mkdocs", - "kind": "module", - "path": "docforge.cli.mkdocs", - "signature": null, - "docstring": null, - "members": { - "logic": { - "name": "logic", - "kind": "module", - "path": "docforge.cli.mkdocs.logic", - "signature": null, - "docstring": null, + }, + "discover_module_paths": { + "name": "discover_module_paths", + "kind": "function", + "path": "docforge.cli.mcp_utils.discover_module_paths", + "signature": "", + "docstring": "Discover all Python modules under a package via filesystem traversal.\n\nRules:\n- Directory with __init__.py is treated as a package.\n- Any .py file is treated as a module.\n- All paths are converted to dotted module paths.\n\nArgs:\n module_name: The name of the package to discover.\n project_root: The root directory of the project. Defaults to current working directory.\n\nReturns:\n A sorted list of dotted module paths." + }, + "MCPRenderer": { + "name": "MCPRenderer", + "kind": "class", + "path": "docforge.cli.mcp_utils.MCPRenderer", + "signature": "", + "docstring": "Renderer that emits MCP-native JSON resources from docforge models.", "members": { - "Path": { - "name": "Path", - "kind": "alias", - "path": "docforge.cli.mkdocs.logic.Path", - "signature": "", + "name": { + "name": "name", + "kind": "attribute", + "path": "docforge.cli.mcp_utils.MCPRenderer.name", + "signature": "", "docstring": null }, - "resources": { - "name": "resources", - "kind": "alias", - "path": "docforge.cli.mkdocs.logic.resources", - "signature": "", - "docstring": null - }, - "click": { - "name": "click", - "kind": "alias", - "path": "docforge.cli.mkdocs.logic.click", - "signature": "", - "docstring": null - }, - "yaml": { - "name": "yaml", - "kind": "alias", - "path": "docforge.cli.mkdocs.logic.yaml", - "signature": "", - "docstring": null - }, - "GriffeLoader": { - "name": "GriffeLoader", - "kind": "class", - "path": "docforge.cli.mkdocs.logic.GriffeLoader", - "signature": "", - "docstring": "Loads Python modules and extracts documentation using the Griffe introspection engine.", - "members": { - "load_project": { - "name": "load_project", - "kind": "function", - "path": "docforge.cli.mkdocs.logic.GriffeLoader.load_project", - "signature": "", - "docstring": "Load multiple modules and combine them into a single Project models.\n\nArgs:\n module_paths: A list of dotted paths to the modules to load.\n project_name: Optional name for the project. Defaults to the first module name.\n skip_import_errors: If True, modules that fail to import will be skipped.\n\nReturns:\n A Project instance containing the loaded modules." - }, - "load_module": { - "name": "load_module", - "kind": "function", - "path": "docforge.cli.mkdocs.logic.GriffeLoader.load_module", - "signature": "", - "docstring": "Load a single module and convert its introspection data into the docforge models.\n\nArgs:\n path: The dotted path of the module to load.\n\nReturns:\n A Module instance." - } - } - }, - "discover_module_paths": { - "name": "discover_module_paths", - "kind": "function", - "path": "docforge.cli.mkdocs.logic.discover_module_paths", - "signature": "", - "docstring": "Discover all Python modules under a package via filesystem traversal.\n\nRules:\n- Directory with __init__.py is treated as a package.\n- Any .py file is treated as a module.\n- All paths are converted to dotted module paths.\n\nArgs:\n module_name: The name of the package to discover.\n project_root: The root directory of the project. Defaults to current working directory.\n\nReturns:\n A sorted list of dotted module paths." - }, - "MkDocsRenderer": { - "name": "MkDocsRenderer", - "kind": "class", - "path": "docforge.cli.mkdocs.logic.MkDocsRenderer", - "signature": "", - "docstring": "Renderer that generates Markdown source files formatted for the MkDocs\n'mkdocstrings' plugin.", - "members": { - "name": { - "name": "name", - "kind": "attribute", - "path": "docforge.cli.mkdocs.logic.MkDocsRenderer.name", - "signature": "", - "docstring": null - }, - "generate_sources": { - "name": "generate_sources", - "kind": "function", - "path": "docforge.cli.mkdocs.logic.MkDocsRenderer.generate_sources", - "signature": "", - "docstring": "Produce a set of Markdown files in the output directory based on the\nprovided Project models.\n\nArgs:\n project: The project models to render.\n out_dir: Target directory for documentation files." - } - } - }, - "load_nav_spec": { - "name": "load_nav_spec", - "kind": "function", - "path": "docforge.cli.mkdocs.logic.load_nav_spec", - "signature": "", - "docstring": "Utility function to load a NavSpec from a file.\n\nArgs:\n path: Path to the navigation specification file.\n\nReturns:\n A loaded NavSpec instance." - }, - "resolve_nav": { - "name": "resolve_nav", - "kind": "function", - "path": "docforge.cli.mkdocs.logic.resolve_nav", - "signature": "", - "docstring": "Create a ResolvedNav by processing a NavSpec against the filesystem.\nThis expands globs and validates the existence of referenced files.\n\nArgs:\n spec: The navigation specification to resolve.\n docs_root: The root directory for documentation files.\n\nReturns:\n A ResolvedNav instance.\n\nRaises:\n FileNotFoundError: If a pattern doesn't match any files or the docs_root doesn't exist." - }, - "MkDocsNavEmitter": { - "name": "MkDocsNavEmitter", - "kind": "class", - "path": "docforge.cli.mkdocs.logic.MkDocsNavEmitter", - "signature": "", - "docstring": "Emitter responsible for transforming a ResolvedNav into an MkDocs-compatible\nnavigation structure.", - "members": { - "emit": { - "name": "emit", - "kind": "function", - "path": "docforge.cli.mkdocs.logic.MkDocsNavEmitter.emit", - "signature": "", - "docstring": "Generate a list of navigation entries for mkdocs.yml.\n\nArgs:\n nav: The resolved navigation data.\n\nReturns:\n A list of dictionary mappings representing the MkDocs navigation." - } - } - }, "generate_sources": { "name": "generate_sources", "kind": "function", - "path": "docforge.cli.mkdocs.logic.generate_sources", - "signature": "", - "docstring": "Generate Markdown source files for the specified module." - }, - "generate_config": { - "name": "generate_config", - "kind": "function", - "path": "docforge.cli.mkdocs.logic.generate_config", - "signature": "", - "docstring": "Generate an mkdocs.yml configuration file." - }, - "build": { - "name": "build", - "kind": "function", - "path": "docforge.cli.mkdocs.logic.build", - "signature": "", - "docstring": "Build the documentation site using MkDocs." - }, - "serve": { - "name": "serve", - "kind": "function", - "path": "docforge.cli.mkdocs.logic.serve", - "signature": "", - "docstring": "Serve the documentation site with live-reload using MkDocs." + "path": "docforge.cli.mcp_utils.MCPRenderer.generate_sources", + "signature": "", + "docstring": "Generate MCP-compatible JSON resources and navigation for the project." } } + }, + "MCPServer": { + "name": "MCPServer", + "kind": "class", + "path": "docforge.cli.mcp_utils.MCPServer", + "signature": "", + "docstring": "MCP server for serving a pre-built MCP documentation bundle.", + "members": { + "mcp_root": { + "name": "mcp_root", + "kind": "attribute", + "path": "docforge.cli.mcp_utils.MCPServer.mcp_root", + "signature": "", + "docstring": null + }, + "app": { + "name": "app", + "kind": "attribute", + "path": "docforge.cli.mcp_utils.MCPServer.app", + "signature": "", + "docstring": null + }, + "run": { + "name": "run", + "kind": "function", + "path": "docforge.cli.mcp_utils.MCPServer.run", + "signature": "", + "docstring": "Start the MCP server.\n\nArgs:\n transport: MCP transport (default: streamable-http)" + } + } + }, + "generate_resources": { + "name": "generate_resources", + "kind": "function", + "path": "docforge.cli.mcp_utils.generate_resources", + "signature": "", + "docstring": "Generate MCP-compatible documentation resources." + }, + "serve": { + "name": "serve", + "kind": "function", + "path": "docforge.cli.mcp_utils.serve", + "signature": "", + "docstring": "Serve MCP documentation." + } + } + }, + "mkdocs_utils": { + "name": "mkdocs_utils", + "kind": "module", + "path": "docforge.cli.mkdocs_utils", + "signature": null, + "docstring": null, + "members": { + "Path": { + "name": "Path", + "kind": "alias", + "path": "docforge.cli.mkdocs_utils.Path", + "signature": "", + "docstring": null + }, + "resources": { + "name": "resources", + "kind": "alias", + "path": "docforge.cli.mkdocs_utils.resources", + "signature": "", + "docstring": null + }, + "click": { + "name": "click", + "kind": "alias", + "path": "docforge.cli.mkdocs_utils.click", + "signature": "", + "docstring": null + }, + "yaml": { + "name": "yaml", + "kind": "alias", + "path": "docforge.cli.mkdocs_utils.yaml", + "signature": "", + "docstring": null + }, + "GriffeLoader": { + "name": "GriffeLoader", + "kind": "class", + "path": "docforge.cli.mkdocs_utils.GriffeLoader", + "signature": "", + "docstring": "Loads Python modules and extracts documentation using the Griffe introspection engine.", + "members": { + "load_project": { + "name": "load_project", + "kind": "function", + "path": "docforge.cli.mkdocs_utils.GriffeLoader.load_project", + "signature": "", + "docstring": "Load multiple modules and combine them into a single Project models.\n\nArgs:\n module_paths: A list of dotted paths to the modules to load.\n project_name: Optional name for the project. Defaults to the first module name.\n skip_import_errors: If True, modules that fail to import will be skipped.\n\nReturns:\n A Project instance containing the loaded modules." + }, + "load_module": { + "name": "load_module", + "kind": "function", + "path": "docforge.cli.mkdocs_utils.GriffeLoader.load_module", + "signature": "", + "docstring": "Load a single module and convert its introspection data into the docforge models.\n\nArgs:\n path: The dotted path of the module to load.\n\nReturns:\n A Module instance." + } + } + }, + "discover_module_paths": { + "name": "discover_module_paths", + "kind": "function", + "path": "docforge.cli.mkdocs_utils.discover_module_paths", + "signature": "", + "docstring": "Discover all Python modules under a package via filesystem traversal.\n\nRules:\n- Directory with __init__.py is treated as a package.\n- Any .py file is treated as a module.\n- All paths are converted to dotted module paths.\n\nArgs:\n module_name: The name of the package to discover.\n project_root: The root directory of the project. Defaults to current working directory.\n\nReturns:\n A sorted list of dotted module paths." + }, + "MkDocsRenderer": { + "name": "MkDocsRenderer", + "kind": "class", + "path": "docforge.cli.mkdocs_utils.MkDocsRenderer", + "signature": "", + "docstring": "Renderer that generates Markdown source files formatted for the MkDocs\n'mkdocstrings' plugin.", + "members": { + "name": { + "name": "name", + "kind": "attribute", + "path": "docforge.cli.mkdocs_utils.MkDocsRenderer.name", + "signature": "", + "docstring": null + }, + "generate_sources": { + "name": "generate_sources", + "kind": "function", + "path": "docforge.cli.mkdocs_utils.MkDocsRenderer.generate_sources", + "signature": "", + "docstring": "Produce a set of Markdown files in the output directory based on the\nprovided Project models.\n\nArgs:\n project: The project models to render.\n out_dir: Target directory for documentation files." + } + } + }, + "load_nav_spec": { + "name": "load_nav_spec", + "kind": "function", + "path": "docforge.cli.mkdocs_utils.load_nav_spec", + "signature": "", + "docstring": "Utility function to load a NavSpec from a file.\n\nArgs:\n path: Path to the navigation specification file.\n\nReturns:\n A loaded NavSpec instance." + }, + "resolve_nav": { + "name": "resolve_nav", + "kind": "function", + "path": "docforge.cli.mkdocs_utils.resolve_nav", + "signature": "", + "docstring": "Create a ResolvedNav by processing a NavSpec against the filesystem.\nThis expands globs and validates the existence of referenced files.\n\nArgs:\n spec: The navigation specification to resolve.\n docs_root: The root directory for documentation files.\n\nReturns:\n A ResolvedNav instance.\n\nRaises:\n FileNotFoundError: If a pattern doesn't match any files or the docs_root doesn't exist." + }, + "MkDocsNavEmitter": { + "name": "MkDocsNavEmitter", + "kind": "class", + "path": "docforge.cli.mkdocs_utils.MkDocsNavEmitter", + "signature": "", + "docstring": "Emitter responsible for transforming a ResolvedNav into an MkDocs-compatible\nnavigation structure.", + "members": { + "emit": { + "name": "emit", + "kind": "function", + "path": "docforge.cli.mkdocs_utils.MkDocsNavEmitter.emit", + "signature": "", + "docstring": "Generate a list of navigation entries for mkdocs.yml.\n\nArgs:\n nav: The resolved navigation data.\n\nReturns:\n A list of dictionary mappings representing the MkDocs navigation." + } + } + }, + "generate_sources": { + "name": "generate_sources", + "kind": "function", + "path": "docforge.cli.mkdocs_utils.generate_sources", + "signature": "", + "docstring": "Generate Markdown source files for the specified module." + }, + "generate_config": { + "name": "generate_config", + "kind": "function", + "path": "docforge.cli.mkdocs_utils.generate_config", + "signature": "", + "docstring": "Generate an mkdocs.yml configuration file." + }, + "build": { + "name": "build", + "kind": "function", + "path": "docforge.cli.mkdocs_utils.build", + "signature": "", + "docstring": "Build the documentation site using MkDocs." + }, + "serve": { + "name": "serve", + "kind": "function", + "path": "docforge.cli.mkdocs_utils.serve", + "signature": "", + "docstring": "Serve the documentation site with live-reload using MkDocs." } } } diff --git a/mcp_docs/nav.json b/mcp_docs/nav.json index 597961a..c3c9367 100644 --- a/mcp_docs/nav.json +++ b/mcp_docs/nav.json @@ -16,20 +16,12 @@ "resource": "doc://modules/docforge.cli.main" }, { - "module": "docforge.cli.mcp", - "resource": "doc://modules/docforge.cli.mcp" + "module": "docforge.cli.mcp_utils", + "resource": "doc://modules/docforge.cli.mcp_utils" }, { - "module": "docforge.cli.mcp.logic", - "resource": "doc://modules/docforge.cli.mcp.logic" - }, - { - "module": "docforge.cli.mkdocs", - "resource": "doc://modules/docforge.cli.mkdocs" - }, - { - "module": "docforge.cli.mkdocs.logic", - "resource": "doc://modules/docforge.cli.mkdocs.logic" + "module": "docforge.cli.mkdocs_utils", + "resource": "doc://modules/docforge.cli.mkdocs_utils" }, { "module": "docforge.loaders", diff --git a/mkdocs.yml b/mkdocs.yml index a6c1dcb..5b9e7da 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -58,7 +58,5 @@ nav: - docforge/cli/index.md - docforge/cli/main.md - docforge/cli/commands.md - - docforge/cli/mcp/index.md - - docforge/cli/mcp/logic.md - - docforge/cli/mkdocs/index.md - - docforge/cli/mkdocs/logic.md + - docforge/cli/mcp_utils.md + - docforge/cli/mkdocs_utils.md