Build your technical documentation site with docfx, with landing pages, markdown, API reference docs for .NET, REST API and more.
As you may have heard docfx has been transitioned to be a .NET Foundation project. Microsoft Learn no longer uses docfx and do not intend to support the project since Nov 2022.
Docfx is planned to continue as a community-driven project. We hope to produce future releases with new features and enhancements to support existing and new use cases. We also would like to invite any interested parties to be involved in this project. If you'd like to contact the community team please open a discussion thread.
-
Install docfx as a global tool:
dotnet tool install -g docfx
-
Create and start a website locally:
docfx init -q docfx build docfx_project\docfx.json --serve
-
Go to https://localhost:8080 to see the sample site.
For more information, refer to Getting Started.
Use Discussions for questions and general discussions. Use Issues to report bugs and proposing features.
We welcome code contributions through pull requests, issues tagged as help-wanted
are good candidate to start contributing code.
- Install Visual Studio 2022 (Community or higher) and make sure you have the latest updates.
- Install .NET SDK 6.x, 7.x and 8.x.
- Install NodeJS (18.x.x).
- Optional: Install wkhtmltopdf on Windows to test PDF using
choco install wkhtmltopdf
.
- Build site templates in
templates
directory:- Run
npm install
to restore npm dependencies. - Run
npm run build
to build the templates.
- Run
- Run
dotnet build
to build the project or use Visual Studio to builddocfx.sln
. - Run
dotnet test
to test the project or use Visual Studio test explorer.- Run
git lfs checkout
to checkout files for snapshot testing
- Run
The main
branch is the default branch for pull requests and most other development activities. We occasionally use feature/*
branches for epic feature development.
Releases are based on a stable main
branch commit using GitHub Releases. Use of Conventional Commit is encouraged.
Docfx is not released under a regular cadence, new versions arrive when maintainers see enough changes that warrant a new releases. Sometimes we use prereleases to dogfood breaking changes and get feedbacks from the community.
We use Milestones to communicate upcoming changes docfx:
-
Working Set are features being actively worked on. Not every features in this bucket will be committed in the next release but they reflect top of minds of maintainers in the upcoming period.
-
Backlog is a set of feature candidates for some future releases, but are not being actively worked on.
This project is licensed under the MIT License.
This project is supported by the .NET Foundation.
This project has adopted the code of conduct defined by the Contributor Covenant to clarify expected behavior in our community. For more information see the .NET Foundation Code of Conduct.