Skip to content

Commit c6b57a4

Browse files
switch to mkdocstrings for API docs (#952)
1 parent bce7c75 commit c6b57a4

File tree

25 files changed

+85
-3388
lines changed

25 files changed

+85
-3388
lines changed

.github/workflows/deploy_mkdocs.yml

Lines changed: 1 addition & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -30,35 +30,8 @@ jobs:
3030
run: |
3131
python -m pip install --upgrade pip
3232
python -m pip install src/titiler/core src/titiler/extensions["cogeo,stac"] src/titiler/mosaic src/titiler/application
33-
python -m pip install nbconvert mkdocs mkdocs-material mkdocs-jupyter pygments pdocs
33+
python -m pip install -r requirements/requirement-docs.txt
3434
35-
- name: update API docs
36-
run: |
37-
pdocs as_markdown \
38-
--output_dir docs/src/api \
39-
--exclude_source \
40-
--overwrite \
41-
titiler.core.dependencies \
42-
titiler.core.factory \
43-
titiler.core.routing \
44-
titiler.core.errors \
45-
titiler.core.resources.enums \
46-
titiler.core.middleware
47-
48-
pdocs as_markdown \
49-
--output_dir docs/src/api \
50-
--exclude_source \
51-
--overwrite \
52-
titiler.extensions.cogeo \
53-
titiler.extensions.viewer \
54-
titiler.extensions.stac
55-
56-
pdocs as_markdown \
57-
--output_dir docs/src/api \
58-
--exclude_source \
59-
--overwrite \
60-
titiler.mosaic.factory \
61-
titiler.mosaic.errors
6235
6336
- name: Deploy docs
6437
run: mkdocs gh-deploy --force -f docs/mkdocs.yml

.gitignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -107,4 +107,4 @@ ENV/
107107

108108
cdk.out/
109109
deployment/k8s/titiler/values-test.yaml
110-
docs/src/api/
110+

CONTRIBUTING.md

Lines changed: 1 addition & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ python -m pytest src/titiler/application --cov=titiler.application --cov-report=
4747
```bash
4848
git clone https://github.com/developmentseed/titiler.git
4949
cd titiler
50-
python -m pip install nbconvert mkdocs mkdocs-material mkdocs-jupyter pygments pdocs
50+
python -m pip install -r requirements/requirement-docs.txt
5151
```
5252

5353
Hot-reloading docs:
@@ -62,33 +62,3 @@ Actions deploys automatically for new commits.):
6262
```bash
6363
mkdocs gh-deploy -f docs/mkdocs.yml
6464
```
65-
66-
```bash
67-
pdocs as_markdown \
68-
--output_dir docs/src/api \
69-
--exclude_source \
70-
--overwrite \
71-
titiler.core.dependencies \
72-
titiler.core.factory \
73-
titiler.core.utils \
74-
titiler.core.routing \
75-
titiler.core.errors \
76-
titiler.core.resources.enums \
77-
titiler.core.middleware
78-
79-
pdocs as_markdown \
80-
--output_dir docs/src/api \
81-
--exclude_source \
82-
--overwrite \
83-
titiler.extensions.cogeo \
84-
titiler.extensions.viewer \
85-
titiler.extensions.stac
86-
87-
pdocs as_markdown \
88-
--output_dir docs/src/api \
89-
--exclude_source \
90-
--overwrite \
91-
titiler.mosaic.factory \
92-
titiler.mosaic.resources.enums \
93-
titiler.mosaic.errors
94-
```

docs/mkdocs.yml

Lines changed: 50 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -92,15 +92,23 @@ nav:
9292
- factory: api/titiler/core/factory.md
9393
- routing: api/titiler/core/routing.md
9494
- errors: api/titiler/core/errors.md
95-
- enums: api/titiler/core/resources/enums.md
9695
- middleware: api/titiler/core/middleware.md
96+
- resources:
97+
- enums: api/titiler/core/resources/enums.md
98+
- responses: api/titiler/core/resources/responses.md
99+
- models:
100+
- OGC: api/titiler/core/models/OGC.md
101+
- Mapbox/MapLibre: api/titiler/core/models/mapbox.md
102+
- responses: api/titiler/core/models/responses.md
97103
- titiler.extensions:
98104
- cogeo: api/titiler/extensions/cogeo.md
99105
- stac: api/titiler/extensions/stac.md
100106
- viewer: api/titiler/extensions/viewer.md
101107
- titiler.mosaic:
102108
- factory: api/titiler/mosaic/factory.md
103109
- errors: api/titiler/mosaic/errors.md
110+
- models:
111+
- responses: api/titiler/mosaic/models/responses.md
104112

105113
- Deployment:
106114
- Amazon Web Services:
@@ -118,8 +126,36 @@ nav:
118126

119127
plugins:
120128
- search
129+
- social
121130
- mkdocs-jupyter:
122-
include_source: True
131+
include_source: true
132+
ignore: ["**/.ipynb_checkpoints/*.ipynb"]
133+
- mkdocstrings:
134+
enable_inventory: true
135+
handlers:
136+
python:
137+
paths: [src]
138+
options:
139+
filters:
140+
- "!^__post_init__"
141+
docstring_section_style: list
142+
docstring_style: google
143+
line_length: 100
144+
separate_signature: true
145+
show_root_heading: true
146+
show_signature_annotations: true
147+
show_source: false
148+
show_symbol_type_toc: true
149+
signature_crossrefs: true
150+
extensions:
151+
- griffe_inherited_docstrings
152+
import:
153+
- https://docs.python.org/3/objects.inv
154+
- https://numpy.org/doc/stable/objects.inv
155+
- https://rasterio.readthedocs.io/en/stable/objects.inv
156+
- https://docs.pydantic.dev/latest/objects.inv
157+
- https://fastapi.tiangolo.com/objects.inv
158+
- https://cogeotiff.github.io/rio-tiler/objects.inv
123159

124160
theme:
125161
name: material
@@ -129,6 +165,15 @@ theme:
129165
custom_dir: 'src/overrides'
130166
favicon: img/favicon.png
131167

168+
features:
169+
- content.code.annotate
170+
- content.code.copy
171+
- navigation.indexes
172+
- navigation.instant
173+
- navigation.tracking
174+
- search.suggest
175+
- search.share
176+
132177
# https://github.com/kylebarron/cogeo-mosaic/blob/mkdocs/mkdocs.yml#L50-L75
133178
markdown_extensions:
134179
- admonition
@@ -142,7 +187,9 @@ markdown_extensions:
142187
- pymdownx.caret:
143188
insert: false
144189
- pymdownx.details
145-
- pymdownx.emoji
190+
- pymdownx.emoji:
191+
emoji_index: !!python/name:material.extensions.emoji.twemoji
192+
emoji_generator: !!python/name:material.extensions.emoji.to_svg
146193
- pymdownx.escapeall:
147194
hardbreak: true
148195
nbsp: true

0 commit comments

Comments
 (0)