forked from patrick-kidger/equinox
-
Notifications
You must be signed in to change notification settings - Fork 0
/
mkdocs.yml
150 lines (140 loc) · 5.9 KB
/
mkdocs.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
theme:
name: material
features:
- navigation.sections # Sections are included in the navigation on the left.
- toc.integrate # Table of contents is integrated on the left; does not appear separately on the right.
- header.autohide # header disappears as you scroll
palette:
# Light mode / dark mode
# We deliberately don't automatically use `media` to check a user's preferences. We default to light mode as
# (a) it looks more professional, and (b) is more obvious about the fact that it offers a (dark mode) toggle.
- scheme: default
primary: white
accent: amber
toggle:
icon: material/weather-night
name: Switch to dark mode
- scheme: slate
primary: black
accent: amber
toggle:
icon: material/weather-sunny
name: Switch to light mode
icon:
repo: fontawesome/brands/github # GitHub logo in top right
logo: "material/circle-opacity" # Equinox logo in top left
favicon: "_static/favicon.png"
custom_dir: "docs/_overrides" # Overriding part of the HTML
# These additions are my own custom ones, having overridden a partial.
twitter_name: "@PatrickKidger"
twitter_url: "https://twitter.com/PatrickKidger"
site_name: Equinox
site_description: The documentation for the Equinox software library.
site_author: Patrick Kidger
site_url: https://docs.kidger.site/equinox
repo_url: https://github.com/patrick-kidger/equinox
repo_name: patrick-kidger/equinox
edit_uri: "" # No edit button, as some of our pages are in /docs and some in /examples via symlink, so it's impossible for them all to be accurate
strict: true # Don't allow warnings during the build process
extra_javascript:
# The below three make MathJax work, see https://squidfunk.github.io/mkdocs-material/reference/mathjax/
- _static/mathjax.js
- https://polyfill.io/v3/polyfill.min.js?features=es6
- https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js
extra_css:
- _static/custom_css.css
markdown_extensions:
- pymdownx.arithmatex: # Render LaTeX via MathJax
generic: true
- pymdownx.superfences # Seems to enable syntax highlighting when used with the Material theme.
- pymdownx.details # Allowing hidden expandable regions denoted by ???
- pymdownx.snippets: # Include one Markdown file into another
base_path: docs
- admonition
- toc:
permalink: "¤" # Adds a clickable permalink to each section heading
toc_depth: 4
plugins:
- search # default search plugin; needs manually re-enabling when using any other plugins
- autorefs # Cross-links to headings
- include_exclude_files:
include:
- ".htaccess"
exclude:
- "_overrides"
- "examples/MNIST"
- "examples/bert_checkpoint.eqx"
- mknotebooks # Jupyter notebooks
- mkdocstrings:
handlers:
python:
setup_commands:
- import pytkdocs_tweaks
- pytkdocs_tweaks.main()
- import jaxtyping
- jaxtyping.set_array_name_format("array")
- import jax
- jax.ShapeDtypeStruct.__module__ = "jax"
- jax.core.ClosedJaxpr.__module__ = "jax.core"
selection:
inherited_members: true # Allow looking up inherited methods
rendering:
show_root_heading: true # actually display anything at all...
show_root_full_path: true # display "diffrax.asdf" not just "asdf"
show_if_no_docstring: true
show_signature_annotations: true
show_source: false # don't include source code
members_order: source # order methods according to their order of definition in the source code, not alphabetical order
heading_level: 4
nav:
- 'index.md'
- 'all-of-equinox.md'
- Examples:
- Introductory:
- CNN on MNIST: 'examples/mnist.ipynb'
- Train RNN: 'examples/train_rnn.ipynb'
- Advanced:
- Generative score-based diffusion: 'examples/score_based_diffusion.ipynb'
- BERT language model: 'examples/bert.ipynb'
- U-Net implementation: 'examples/unet.ipynb'
- Vision transformer: 'examples/vision_transformer.ipynb'
- Image GAN: 'examples/deep_convolutional_gan.ipynb'
- Features:
- Freezing parameters: 'examples/frozen_layer.ipynb'
- Compatibility with init-apply libraries: 'examples/init_apply.ipynb'
- Stateful operations (e.g. BatchNorm): 'examples/stateful.ipynb'
- Autoparallelism (e.g. multi-GPU): 'examples/parallelism.ipynb'
- Serialisation (with hyperparameters): 'examples/serialisation.ipynb'
- Basic API:
- Modules:
- 'api/module/module.md'
- 'api/module/advanced_fields.md'
- Neural network layers:
- 'api/nn/linear.md'
- 'api/nn/conv.md'
- 'api/nn/rnn.md'
- 'api/nn/attention.md'
- 'api/nn/activations.md'
- 'api/nn/pool.md'
- 'api/nn/dropout.md'
- 'api/nn/normalisation.md'
- 'api/nn/embedding.md'
- 'api/nn/mlp.md'
- 'api/nn/sequential.md'
- 'api/nn/inference.md'
- 'api/nn/shared.md'
- 'api/nn/stateful.md'
- 'api/transformations.md'
- 'api/manipulation.md'
- Advanced API:
- 'api/caches.md'
- 'api/debug.md'
- 'api/enumerations.md'
- 'api/errors.md'
- 'api/pretty-printing.md'
- 'api/serialisation.md'
- Misc:
- 'faq.md'
- 'tricks.md'
# - 'pattern.md'
- 'citation.md'