dotnet / dotnet/docfx

Is there any way to make the API docs TOC so that it can list Projects and then Namespaces? (i.e. multi level)

Open
#2,041 10 comments 8 reactions 0 assignees View on GitHub
toc
Dominant language
C#
Stars
4.4k
Forks
890
Avg merge
2h 11m
Merged PRs (30d)
10

Description

**DocFX Version Used**:

v2.23.1

**Template used**: (`default` or `statictoc` or contain custom template)

custom template

**Steps to Reproduce**:

N/A

**Expected Behavior**:

N/A

**Actual Behavior**:

When generating the docs, the TOC listed is every namespace in every project built which can be a very long list. Instead we'd like to have it list by Projects or 'Package' and then by namespace.

As I'm writing this it occurred to me that I can almost achieve this by specifying multiple entries under the "metadata" of the docfx.json (since it's an array) and can have one entry per project. This essentially generates separate 'sites' per project and then i can create my own toc.yml file to link to each one.

But... a problem I'm seeing with that is that if the same namespace is used between projects, then there are UID issues since a namespace is unique which means that the TOC entry for that namespace in one project will end up linking to the last project specified in the docfx.json file where that namespace also exists. (hope that makes sense, if not I'm happy to post a video or similar)

Any pointers would be much appreciated

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.