Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
58 commits
Select commit Hold shift + click to select a range
eb6b3d4
Docs audit [April 2026]: Tooling update (#3296)
C-Achard May 21, 2026
988f2c6
Introduce mdformat pre-commit hook (#3287)
C-Achard May 21, 2026
73532cd
Docs versioning: update CI to warn for outdated metadata (#3279)
C-Achard May 21, 2026
62d58d3
Docs audit [April 2026]: Review docs - metadata update only (#3297)
C-Achard May 21, 2026
a4faaf7
Docs audit [April 2026]: Docs content update (#3298)
C-Achard May 27, 2026
054f822
Docs audit [April 2026]: Run mdformat on all (#3299)
C-Achard May 27, 2026
56c57bb
Fix conflicts
C-Achard May 27, 2026
d520090
Fix conflicts
C-Achard May 27, 2026
5976b2c
Fix conflicts
C-Achard May 27, 2026
b52abbf
Fix conflicts
C-Achard May 27, 2026
0ca05e0
Revert lost changes
C-Achard May 27, 2026
49bf624
Fix TOC entry and update guide title
C-Achard May 27, 2026
25b73ef
Merge pull request #3347 from DeepLabCut/cy/docs-audit-2026-gui-merge
C-Achard May 27, 2026
626add4
Docs audit [April 2026]: TOC update & streamlining (#3308)
C-Achard May 27, 2026
a99bf1c
Documentation: Migrate dlc-utils docs page
C-Achard May 6, 2026
9ca6dc2
chore(metadata): update docs/notebooks metadata
C-Achard May 6, 2026
0b46e0a
Fix repo link in utils
C-Achard May 6, 2026
88ec90b
Change utils section name
C-Achard May 6, 2026
55cf4f9
Add XROMM+DeepLabCut local integration guide
C-Achard May 6, 2026
45d761a
Fix typo
C-Achard May 27, 2026
c37cbb6
Fix typo
C-Achard May 27, 2026
eab7e60
Fix capitalization
C-Achard May 27, 2026
c7d287d
Merge branch 'cy/dlc-utils-docs' into cy/dlc-utils-xromm
C-Achard May 27, 2026
f5c4f1d
Merge pull request #3309 from DeepLabCut/cy/dlc-utils-docs
C-Achard May 27, 2026
89b6b77
Merge branch 'docs/audit-2026' into cy/dlc-utils-xromm
C-Achard May 27, 2026
2807179
Merge pull request #3311 from DeepLabCut/cy/dlc-utils-xromm
C-Achard May 27, 2026
f1122b4
Update README: revise TF installation instructions
deruyter92 Apr 24, 2026
40391ca
Update installTips recipe: remove apple-mchips
deruyter92 Apr 24, 2026
5ad2e3a
Update tech/hardware docs: recommend WSL for windows.
deruyter92 Apr 24, 2026
d6c1faf
Update docs: installation instructions
deruyter92 Apr 24, 2026
9aed7e6
docs audit 2026: update docker and deeplabcut-docker documentation
deruyter92 May 22, 2026
2713d86
chore(metadata): update docs/notebooks metadata
deruyter92 May 22, 2026
8fd60de
Update Docker docs: clarify modes, mounts, and warnings
C-Achard May 26, 2026
a9fd242
Add comment on NOTEBOOK_TOKEN
deruyter92 May 27, 2026
aa30b81
Apply suggestion from @deruyter92
deruyter92 May 27, 2026
2a45c48
minor fixes superanimal demo notebook
deruyter92 May 7, 2026
e84b3b1
minor adjustments openfield demo notebook
deruyter92 May 7, 2026
4ec0a98
minor updates to multianimal (3 mice) demo notebook
deruyter92 May 7, 2026
34dde4a
minor updates yourdata superanimal notebook
deruyter92 May 7, 2026
2304575
fix colab 3 mice Demo: write missing metadata.yaml
deruyter92 May 7, 2026
0a96b34
Colab superanimal notebook fix param widget
deruyter92 May 11, 2026
09dee59
update citation & link single-animal notebook
deruyter92 May 11, 2026
8b01adb
chore(metadata): update docs/notebooks metadata
deruyter92 May 11, 2026
becebca
restore unrelated metadata fields
deruyter92 May 11, 2026
0cabbcb
Add notes to metadata where required
deruyter92 May 12, 2026
2d179bb
Merge pull request #3344 from DeepLabCut/jaap/docs-2026-update-docker
C-Achard May 27, 2026
da948cd
Merge pull request #3317 from DeepLabCut/jaap/update_tf_docs
C-Achard May 27, 2026
26ddee8
Merge pull request #3324 from DeepLabCut/jaap/docs-audit-update-noteb…
C-Achard May 27, 2026
ec87eda
chore(metadata): update docs/notebooks metadata
C-Achard May 27, 2026
3f6d268
Update audit_metadata.csv
C-Achard May 27, 2026
cf07cde
Merge branch 'docs/audit-2026' of https://github.com/DeepLabCut/DeepL…
C-Achard May 27, 2026
ed3b001
Merge branch 'main' into docs/audit-2026
C-Achard May 27, 2026
e476569
Filter docs/notebooks changes by path
C-Achard May 27, 2026
bed77ce
Add missing force-overwrite-notes option to CSV export
C-Achard May 27, 2026
41de5db
Update audit_metadata.csv
C-Achard May 27, 2026
3273146
Fix Sphinx refs and link formatting
C-Achard May 27, 2026
ed001a5
Add clearer optional requirements instructions for upgrading
C-Achard May 29, 2026
4637665
Fix typo
C-Achard May 29, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
66 changes: 56 additions & 10 deletions .github/workflows/docs_and_notebooks_checks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ permissions:

jobs:
staleness:
name: Docs and notebooks scan (read-only)
name: Docs and notebooks scan (changed docs only)
runs-on: ubuntu-latest
timeout-minutes: 5

Expand All @@ -31,29 +31,75 @@ jobs:
python -m pip install --upgrade pip
python -m pip install "pydantic>=2,<3" pyyaml "nbformat>=5"

- name: Collect changed .md/.ipynb files
id: changed_docs
shell: bash
run: |
set -euo pipefail
mkdir -p tmp/docs_nb_checks

if [[ "${{ github.event_name }}" == "pull_request" ]]; then
base="${{ github.event.pull_request.base.sha }}"
head="${{ github.event.pull_request.head.sha }}"
else
base="${{ github.event.before }}"
head="${{ github.sha }}"
fi

git diff --name-only --diff-filter=ACMR "$base" "$head" \
| { grep -iE '\.(md|ipynb)$' || true; } \
| { grep -E '^(docs/|tools/|examples/COLAB/|examples/JUPYTER/)' || true; } \
| sort -u > tmp/docs_nb_checks/changed_docs.txt

count=$(wc -l < tmp/docs_nb_checks/changed_docs.txt | tr -d ' ')
echo "count=$count" >> "$GITHUB_OUTPUT"

echo "Changed docs files:"
if [[ "$count" -eq 0 ]]; then
echo "(none)"
else
sed 's/^/- /' tmp/docs_nb_checks/changed_docs.txt
fi

- name: Run staleness report (read-only)
if: steps.changed_docs.outputs.count != '0'
shell: bash
run: |
python tools/docs_and_notebooks_check.py \
--config tools/docs_and_notebooks_report_config.yml \
--out-dir tmp/docs_nb_checks \
report
set -euo pipefail
mapfile -t targets < tmp/docs_nb_checks/changed_docs.txt

python tools/docs_and_notebooks_check.py \
--config tools/docs_and_notebooks_report_config.yml \
--out-dir tmp/docs_nb_checks \
report \
--targets "${targets[@]}"

# Optional: run check mode (will fail only once you populate allowlists in config)
- name: Run staleness policy check (optional gate)
if: steps.changed_docs.outputs.count != '0'
continue-on-error: true
shell: bash
run: |
set -euo pipefail
mapfile -t targets < tmp/docs_nb_checks/changed_docs.txt

python tools/docs_and_notebooks_check.py \
--config tools/docs_and_notebooks_report_config.yml \
--out-dir tmp/docs_nb_checks \
--no-step-summary \
check
--config tools/docs_and_notebooks_report_config.yml \
--out-dir tmp/docs_nb_checks \
--no-step-summary \
check \
--targets "${targets[@]}"

- name: No changed docs to scan
if: steps.changed_docs.outputs.count == '0'
run: echo "No changed .md or .ipynb files found in the repo. Skipping scan."

- name: Upload staleness artifacts
if: steps.changed_docs.outputs.count != '0'
uses: actions/upload-artifact@v4
with:
name: staleness-report
path: |
tmp/docs_nb_checks/*.json
tmp/docs_nb_checks/*.md
tmp/docs_nb_checks/changed_docs.txt
if-no-files-found: error
10 changes: 10 additions & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -84,6 +84,15 @@ repos:
args: [--check, --diff]
stages: [manual]

- repo: https://github.com/hukkin/mdformat
rev: 1.0.0
hooks:
- id: mdformat
additional_dependencies:
- mdformat-myst
files: ^docs/.*\.md$
stages: [pre-commit]

# check only, no modifications
- repo: local
hooks:
Expand All @@ -93,6 +102,7 @@ repos:
language: python
pass_filenames: true
files: ^(docs/|examples/(JUPYTER|COLAB)/|tools/).*(\.md|\.ipynb)$
exclude: ^tools/docs_audits/
args:
- --config
- tools/docs_and_notebooks_report_config.yml
Expand Down
103 changes: 58 additions & 45 deletions README.md

Large diffs are not rendered by default.

230 changes: 111 additions & 119 deletions _toc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,125 +2,117 @@ format: jb-book
root: README

parts:
- caption: Getting Started
chapters:
- file: docs/UseOverviewGuide
- file: docs/course

- caption: Installation
chapters:
- file: docs/installation
- file: docs/recipes/installTips
- file: docs/docker

- caption: Main User Guides
chapters:
- file: docs/standardDeepLabCut_UserGuide
- file: docs/maDLC_UserGuide
- file: docs/Overviewof3D
- file: docs/HelperFunctions

- caption: Graphical User Interfaces (GUIs)
chapters:
- file: docs/gui/PROJECT_GUI
- file: docs/gui/napari_GUI
sections:
- file: docs/gui/napari/basic_usage
- file: docs/gui/napari/advanced_usage

- caption: DLC3 PyTorch Specific Docs
chapters:
- file: docs/pytorch/user_guide.md
- file: docs/pytorch/pytorch_config.md
- file: docs/pytorch/architectures.md

- caption: Quick Start Tutorials
chapters:
- file: docs/quick-start/single_animal_quick_guide
- file: docs/quick-start/tutorial_maDLC

- caption: "🚀 Beginner's Guide to DeepLabCut"
chapters:
- file: docs/beginner-guides/beginners-guide
- file: docs/beginner-guides/manage-project
- file: docs/beginner-guides/labeling
- file: docs/beginner-guides/Training-Evaluation
- file: docs/beginner-guides/video-analysis

- caption: "🚀 Main Demo Notebooks"
chapters:
- file: examples/COLAB/COLAB_DEMO_SuperAnimal
- file: examples/COLAB/COLAB_DEMO_mouse_openfield
- file: examples/COLAB/COLAB_3miceDemo
- file: examples/COLAB/COLAB_HumanPose_with_RTMPose

- caption: "🚀 Notebooks For Your Data"
chapters:
- file: examples/COLAB/COLAB_YOURDATA_SuperAnimal
- file: examples/COLAB/COLAB_YOURDATA_TrainNetwork_VideoAnalysis
- file: examples/COLAB/COLAB_YOURDATA_maDLC_TrainNetwork_VideoAnalysis

- caption: "🚀 Special Feature Demos"
chapters:
- file: examples/COLAB/COLAB_transformer_reID
- file: examples/COLAB/COLAB_BUCTD_and_CTD_tracking
- file: examples/JUPYTER/Demo_3D_DeepLabCut
- file: examples/COLAB/COLAB_DLC_ModelZoo

- caption: "🧑‍🍳 Cookbook (detailed helper guides)"
chapters:
- file: docs/convert_maDLC
- file: docs/recipes/OtherData
- file: docs/recipes/io
- file: docs/recipes/nn
- file: docs/recipes/post
- file: docs/recipes/BatchProcessing
- file: docs/recipes/DLCMethods
- file: docs/recipes/ClusteringNapari
- file: docs/recipes/OpenVINO
- file: docs/recipes/flip_and_rotate
- file: docs/recipes/pose_cfg_file_breakdown
- file: docs/recipes/publishing_notebooks_into_the_DLC_main_cookbook

- caption: Hardware Tips
chapters:
- file: docs/recipes/TechHardware

- caption: DeepLabCut-Live!
chapters:
- file: docs/dlc-live/deeplabcutlive
- file: docs/dlc-live/dlc-live-gui/index
sections:
- file: docs/dlc-live/dlc-live-gui/quickstart/install
- file: docs/dlc-live/dlc-live-gui/user_guide/overview
- file: docs/dlc-live/dlc-live-gui/user_guide/cameras_backends/camera_support
- caption: Getting started
chapters:
- file: docs/UseOverviewGuide
- file: docs/installation
sections:
- file: docs/dlc-live/dlc-live-gui/user_guide/cameras_backends/opencv_backend
- file: docs/dlc-live/dlc-live-gui/user_guide/cameras_backends/basler_backend
- file: docs/dlc-live/dlc-live-gui/user_guide/cameras_backends/aravis_backend
- file: docs/dlc-live/dlc-live-gui/user_guide/cameras_backends/gentl_backend
- file: docs/dlc-live/dlc-live-gui/user_guide/misc/misc_landing
# - file: docs/recipes/installTips
- file: docs/docker
# - file: docs/quick-start/index
# sections:
# - file: docs/quick-start/single_animal_quick_guide
# - file: docs/quick-start/tutorial_maDLC

- caption: Main workflows overview
chapters:
- file: docs/standardDeepLabCut_UserGuide
- file: docs/maDLC_UserGuide
- file: docs/Overviewof3D

- caption: GUI workflow
chapters:
- file: docs/gui/PROJECT_GUI
sections:
- file: docs/dlc-live/dlc-live-gui/user_guide/misc/modelzoo_downloads
- file: docs/dlc-live/dlc-live-gui/user_guide/misc/timestamp_format

- caption: "🦄 DeepLabCut Model Zoo"
chapters:
- file: docs/ModelZoo
- file: docs/recipes/UsingModelZooPupil

- caption: DeepLabCut Benchmarking
chapters:
- file: docs/benchmark
- file: docs/pytorch/Benchmarking_shuffle_guide

- caption: "Mission & Contribute"
chapters:
- file: docs/MISSION_AND_VALUES
- file: docs/roadmap
- file: docs/Governance
- file: CONTRIBUTING
- file: docs/beginner-guides/beginners-guide
- file: docs/beginner-guides/manage-project
- file: docs/beginner-guides/labeling
- file: docs/beginner-guides/Training-Evaluation
- file: docs/beginner-guides/video-analysis
- file: docs/gui/napari_GUI
sections:
- file: docs/gui/napari/basic_usage
- file: docs/gui/napari/advanced_usage
- file: docs/gui/napari/tracking/basic_usage

- caption: Citations for DeepLabCut
chapters:
- file: docs/citation
- caption: Notebooks & Demos
chapters:
- file: docs/notebooks/your_data
sections:
- file: examples/COLAB/COLAB_YOURDATA_SuperAnimal
- file: examples/COLAB/COLAB_YOURDATA_TrainNetwork_VideoAnalysis
- file: examples/COLAB/COLAB_YOURDATA_maDLC_TrainNetwork_VideoAnalysis
- file: docs/notebooks/main_demos
sections:
- file: examples/COLAB/COLAB_DEMO_SuperAnimal
- file: examples/COLAB/COLAB_DEMO_mouse_openfield
- file: examples/COLAB/COLAB_3miceDemo
- file: examples/COLAB/COLAB_HumanPose_with_RTMPose
- file: docs/notebooks/extra
sections:
- file: examples/COLAB/COLAB_transformer_reID
- file: examples/COLAB/COLAB_BUCTD_and_CTD_tracking
- file: examples/JUPYTER/Demo_3D_DeepLabCut
- file: examples/COLAB/COLAB_DLC_ModelZoo

- caption: DeepLabCut 3.0 - PyTorch guides
chapters:
- file: docs/pytorch/index
sections:
- file: docs/pytorch/user_guide.md
- file: docs/pytorch/pytorch_config.md
- file: docs/pytorch/architectures.md
- file: docs/pytorch/Benchmarking_shuffle_guide

- caption: Advanced, Performance & Live
chapters:
- file: docs/ModelZoo
sections:
- file: docs/recipes/UsingModelZooPupil
- file: docs/dlc-live/deeplabcutlive
- file: docs/dlc-live/dlc-live-gui/index
sections:
- file: docs/dlc-live/dlc-live-gui/quickstart/install
- file: docs/dlc-live/dlc-live-gui/user_guide/overview
- file: docs/dlc-live/dlc-live-gui/user_guide/cameras_backends/camera_support
sections:
- file: docs/dlc-live/dlc-live-gui/user_guide/cameras_backends/opencv_backend
- file: docs/dlc-live/dlc-live-gui/user_guide/cameras_backends/basler_backend
- file: docs/dlc-live/dlc-live-gui/user_guide/cameras_backends/aravis_backend
- file: docs/dlc-live/dlc-live-gui/user_guide/cameras_backends/gentl_backend
- file: docs/dlc-live/dlc-live-gui/user_guide/misc/misc_landing
sections:
- file: docs/dlc-live/dlc-live-gui/user_guide/misc/modelzoo_downloads
- file: docs/dlc-live/dlc-live-gui/user_guide/misc/timestamp_format
- file: docs/benchmark
- file: docs/recipes/TechHardware

- caption: Additional guides (Recipes)
chapters:
- file: docs/recipes/index
sections:
- file: docs/recipes/publishing_notebooks_into_the_DLC_main_cookbook
- file: docs/HelperFunctions
- file: docs/convert_maDLC
- file: docs/recipes/OtherData
- file: docs/recipes/io
- file: docs/recipes/nn
- file: docs/recipes/post
- file: docs/recipes/BatchProcessing
- file: docs/recipes/DLCMethods
- file: docs/recipes/ClusteringNapari
- file: docs/recipes/OpenVINO
- file: docs/recipes/flip_and_rotate
- file: docs/recipes/pose_cfg_file_breakdown
# - file: docs/course
- file: docs/dlc-utils/index
sections:
- file: docs/dlc-utils/XROMM/usage

- caption: Project & Community
chapters:
- file: docs/MISSION_AND_VALUES
- file: docs/roadmap
- file: docs/Governance
- file: CONTRIBUTING
- file: docs/citation
7 changes: 5 additions & 2 deletions docs/Governance.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,11 @@ deeplabcut:
last_metadata_updated: '2026-03-06'
ignore: false
---

(governance-model)=

# Governance Model of DeepLabCut

(adapted from https://napari.org/stable/community/governance.html)

## Abstract
Expand Down Expand Up @@ -112,7 +115,7 @@ DeepLabCut uses a “consensus seeking” process for making decisions. The grou
tries to find a resolution that has no open objections among core developers.
Core developers are expected to distinguish between fundamental objections to a
proposal and minor perceived flaws that they can live with, and not hold up the
decision-making process for the latter. If no option can be found without
decision-making process for the latter. If no option can be found without
objections, the decision is escalated to the SC, which will itself use
consensus seeking to come to a resolution. In the unlikely event that there is
still a deadlock, the proposal will move forward if it has the support of a
Expand All @@ -139,7 +142,7 @@ are made according to the following rules:
decision-making process outlined above.

- **Changes to this governance model or our mission, vision, and values**
require a dedicated issue on our [issue tracker](https://github.com/DeepLabCut/DeepLabCut/issues)
require a dedicated issue on our [issue tracker](https://github.com/DeepLabCut/DeepLabCut/issues)
and follow the decision-making process outlined above,
*unless* there is unanimous agreement from core developers on the change in
which case it can move forward faster.
Expand Down
Loading
Loading