Furys.mddox 0.11.1

There is a newer version of this package available.
See the version list below for details.
dotnet tool install --global Furys.mddox --version 0.11.1                
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest # if you are setting up this repo
dotnet tool install --local Furys.mddox --version 0.11.1                
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=Furys.mddox&version=0.11.1                
nuke :add-package Furys.mddox --version 0.11.1                

NuGet version NuGet

ATTENTION: Some command line changes were introduced since version 0.9.0. See options --all-recursive, --recursive and --ignore-attribute

mddox

Fork from loxsmoke/mddox

Global tool that creates markdown documentation using reflection and XML comments extracted from the source code by the compiler.

Sample documentation generated by the tool

MSDN page on XML documentation comments

Installation

dotnet tool install -g furys.mddox

Uninstallation

dotnet tool uninstall -g furys.mddox

Usage

mddox
Usage: mddox <assembly> [optional-parameters]

<assembly>   - The name of the assembly to document.

Optional parameters:

Short format Long format Comment
-o output_md --output output_md The name of the markdown output file.
-f format --format format The markdown file format. Valid values: github,bitbucket,azure.
--all-recursive Step into all referenced assemblies recursively.
-r assembly --recursive assembly Step into specified referenced assemblies recursively.<br>Specify one or more assembly names separated by spaces.
--include stuff The list of space-separated filters of things to include in documentation.<br>Filter by access: subject.visibility<br>Subject is one of: [all, type, method, field, property]<br>Visibility is one of: [all, public, protected, private]<br>Example: all.public<br><br>Filter by attribute: subject.attribute.attribute_name<br>Subject is one of: [all, type, method, field, property]<br>attribute_name is the name of the attribute.<br>Example: field.attribute.JsonIgnoreAttribute<br><br>Filter by name: subject.name.wildcard<br>Subject is one of: [all, type, method, field, property]<br>wildcard is a simple wildcard matching the name.<br>Example: type.name.Hidden*<br>
--exclude stuff The list of space-separated filters of things to exclude from documentation.<br>Syntax is the same as for include filters
-m --ignore-methods Deprecated. Replaced with --exclude method.all. Do not generate documentation for methods and constructors.<br>Useful for POCO documentation.
-d --method-details Generate detailed documentation for methods and constructors.<br>Setting has no effect if --ignore-methods is specified.
-a name --ignore-attribute name Deprecated. Replaced with --exclude all.attribute.name. Do not generate documentation for properties with specified custom attribute(s).<br>For example JsonIgnoreAttribute<br>More than one space-separate attribute can be specified.
-t name --type name Document only the specified type and all types referenced by it.
-s view --msdn view Generate links to the MSDN documentation for System.* and Microsoft.* types.<br>The documentation pages are located at this site https://docs.microsoft.com<br>View specifies what version of the type to show. Use latest, netcore-3.1, or net-5.0
-i "title" --title "title" Document title. Use {assembly} and {version} in the format string to insert the name of the assembly and assembly version.
-n --no-title Do not write the "created by mddox at date" in the markdown file.
-v --verbose Print some debug info when generating documentation. It may help troubleshooting some issues such as missing type information of referenced assemblies.

For best results enable XML documentation build switch in your project and use publish build to get all referenced assemblies in one folder.

Documenting all types of one assembly

mddox MyAssembly.dll

Documenting only fields and properties of all types in assembly

mddox MyAssembly.dll --exclude method.all

Documenting types that do not have specified custom attributes

mddox MyAssembly.dll --exclude all.attribute.JsonIgnoreAttribute --exclude all.attribute.XmlIgnore

Document one type and all referenced types from different assemblies

mddox MyAssembly.dll --type ClassToDocument --recursive ReferencedAssembly1.dll --recursive ReferencedAssembly2.dll

Solutions

There are two solutions in this repository. The mddox.sln solution includes DocXml nuget package. The mddox-dev.sln is development solution that includes full source of DocXml as git sub-module. Sub-module can be updated to the latest version by running git pull origin master in the DocXml folder.

Product Compatible and additional computed target framework versions.
.NET net7.0 is compatible.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

Version Downloads Last updated
0.11.4 189 3/26/2024
0.11.3 191 1/23/2024
0.11.2 151 1/22/2024
0.11.1 205 1/22/2024