Table of Contents

Getting Started



  • See Getting Started with DocFX | DocFX website
  • DocFX is an API documentation generator for .NET, which currently supports C#, VB, and F#. It generates API reference documentation from triple-slash comments in your source code. It also allows you to use Markdown files to create additional topics such as tutorials and how-tos, and to customize the generated reference documentation.
  • Chocolatey: choco install docfx -y
  • Homebrew (owned by the community): brew install docfx
  • GitHub: Download and unzip from GitHub DocFX releases, extract it to a local folder, and add it to PATH so you can run it anywhere.
  • NuGet: nuget install docfx.console. docfx.exe is under folder docfx.console/tools/

DocBuilder PowerShell module

  • Located in the same GitHub repo as this documentation, ey-org/daas-documentation-tools
  • Clone the repo
  • Run LoadModule.ps1 in your favorite (.NET Framework-based) PowerShell host to load the module
  • Note: This module depends on GDI+, which does not exist in all host types, even on Windows

The sample script used to build this site is here: daas-documentation-tools\DocBuilder\Documentation\BuildDocs.ps1

Building the Static Web Site

Basic Process

Basic Process


  • You can use the BuildOutput folder in the same way this repo does as the source for GitHub pages
  • You can split the basic processes into smaller steps if you want to edit the markdown generated from PPTX
    • Generate the markdown to a different location
    • Edit as desired and copy into StaticContent using the best process for your project
    • Generate the static website

Converting PowerPoint to Markdown

About the DocBuilder PowerShell Module

First, ensure you have the module loaded, as described in the Getting Started section.

PowerPoint File Conversion

  • To convert PowerPoint files to Markdown, use the Convert-PowerPointToMarkdown cmdlet provided by the DocBuilder PowerShell module.
  • Example usage:

    Convert-PowerPointToMarkdown -InputFile "path    o\your\presentation.pptx" -OutputDirectory "path    o\output"

Converting PowerShell Module to Markdown

Preparing Your Module

  • Ensure your PowerShell module is well-documented with appropriate comments.
  • Use the Export-ModuleMember cmdlet to explicitly export functions and aliases that you want to include in the documentation.

Generating Markdown

  • Use the Convert-PowerShellToMarkdown cmdlet from the DocBuilder PowerShell module.
  • Example usage:

    Convert-PowerShellToMarkdown -ModuleName "YourModuleName" -OutputDirectory "path    o\output"

Generating A Static Website

Setting Up the Environment

  • Ensure you have all prerequisites installed, as mentioned in the Getting Started section.

Building the Website

  • Run the BuildDocs.ps1 script to generate the static website.
  • Example usage:



  • Customize the docfx.json file to suit your project's needs.
  • Example configuration settings:

      "metadata": [
          "src": [
              "files": [
              "cwd": "../"
          "dest": "api"
      "build": {
        "content": [
            "files": [
        "resource": [
            "files": [
        "dest": "dist"

Adding Topics

  • When you add new topic articles or wish to change the order of the topic list, you must edit StaticContent/topics/toc.yml manually.

Editing toc.yml

Testing Locally

Using http-server

  • After executing BuildDocs.ps1, the BuildOutput folder will contain a complete static website.
  • One recommended choice for serving content is http-server from NPM.
  • Note that this option requires npm and its dependencies.


Hot Reloading

  • You don’t have to stop the web server to run the build script.
  • It is highly recommended to open developer tools and disable caching.

Using GitHub Pages


GitHub Pages Setup

Updating the Site

  • Copy the contents of the BuildOutput folder to /docs and update the master branch with a Pull Request.
  • Wait a moment for the site to update.