├── .gitignore ├── .readthedocs.yml ├── LICENSE ├── Makefile ├── README.rst ├── assets ├── logo-dark.png ├── logo-dark.svg ├── logo-light.png ├── logo-light.svg ├── logo-opengraph.png ├── logo-opengraph.svg ├── logo-wordmark-dark.png ├── logo-wordmark-dark.svg ├── logo-wordmark-light.png ├── logo-wordmark-light.svg ├── logo-wordmark-vertical-compact-dark.png ├── logo-wordmark-vertical-compact-dark.svg ├── logo-wordmark-vertical-compact-light.png ├── logo-wordmark-vertical-compact-light.svg ├── logo-wordmark-vertical-dark.png ├── logo-wordmark-vertical-dark.svg ├── logo-wordmark-vertical-light.png └── logo-wordmark-vertical-light.svg ├── docs ├── Makefile ├── branding.rst ├── conf.py └── index.rst ├── poetry.lock ├── pyproject.toml └── src └── assets ├── logo-dark.svg ├── logo-light.svg ├── logo-opengraph.svg ├── logo-wordmark-dark.svg ├── logo-wordmark-light.svg ├── logo-wordmark-vertical-compact-dark.svg ├── logo-wordmark-vertical-compact-light.svg ├── logo-wordmark-vertical-dark.svg └── logo-wordmark-vertical-light.svg /.gitignore: -------------------------------------------------------------------------------- 1 | _build/ 2 | .direnv/ 3 | .env/ 4 | .envrc 5 | .tool-versions 6 | -------------------------------------------------------------------------------- /.readthedocs.yml: -------------------------------------------------------------------------------- 1 | version: 2 2 | 3 | sphinx: 4 | configuration: "docs/conf.py" 5 | 6 | build: 7 | os: ubuntu-22.04 8 | tools: 9 | python: "3.10" 10 | jobs: 11 | pre_build: 12 | - asdf plugin add poetry 13 | - asdf install poetry latest 14 | - asdf global poetry latest 15 | - poetry config virtualenvs.create false 16 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Attribution 4.0 International 2 | 3 | ======================================================================= 4 | 5 | Creative Commons Corporation ("Creative Commons") is not a law firm and 6 | does not provide legal services or legal advice. Distribution of 7 | Creative Commons public licenses does not create a lawyer-client or 8 | other relationship. Creative Commons makes its licenses and related 9 | information available on an "as-is" basis. Creative Commons gives no 10 | warranties regarding its licenses, any material licensed under their 11 | terms and conditions, or any related information. Creative Commons 12 | disclaims all liability for damages resulting from their use to the 13 | fullest extent possible. 14 | 15 | Using Creative Commons Public Licenses 16 | 17 | Creative Commons public licenses provide a standard set of terms and 18 | conditions that creators and other rights holders may use to share 19 | original works of authorship and other material subject to copyright 20 | and certain other rights specified in the public license below. The 21 | following considerations are for informational purposes only, are not 22 | exhaustive, and do not form part of our licenses. 23 | 24 | Considerations for licensors: Our public licenses are 25 | intended for use by those authorized to give the public 26 | permission to use material in ways otherwise restricted by 27 | copyright and certain other rights. Our licenses are 28 | irrevocable. Licensors should read and understand the terms 29 | and conditions of the license they choose before applying it. 30 | Licensors should also secure all rights necessary before 31 | applying our licenses so that the public can reuse the 32 | material as expected. Licensors should clearly mark any 33 | material not subject to the license. This includes other CC- 34 | licensed material, or material used under an exception or 35 | limitation to copyright. More considerations for licensors: 36 | wiki.creativecommons.org/Considerations_for_licensors 37 | 38 | Considerations for the public: By using one of our public 39 | licenses, a licensor grants the public permission to use the 40 | licensed material under specified terms and conditions. If 41 | the licensor's permission is not necessary for any reason--for 42 | example, because of any applicable exception or limitation to 43 | copyright--then that use is not regulated by the license. Our 44 | licenses grant only permissions under copyright and certain 45 | other rights that a licensor has authority to grant. Use of 46 | the licensed material may still be restricted for other 47 | reasons, including because others have copyright or other 48 | rights in the material. A licensor may make special requests, 49 | such as asking that all changes be marked or described. 50 | Although not required by our licenses, you are encouraged to 51 | respect those requests where reasonable. More_considerations 52 | for the public: 53 | wiki.creativecommons.org/Considerations_for_licensees 54 | 55 | ======================================================================= 56 | 57 | Creative Commons Attribution 4.0 International Public License 58 | 59 | By exercising the Licensed Rights (defined below), You accept and agree 60 | to be bound by the terms and conditions of this Creative Commons 61 | Attribution 4.0 International Public License ("Public License"). To the 62 | extent this Public License may be interpreted as a contract, You are 63 | granted the Licensed Rights in consideration of Your acceptance of 64 | these terms and conditions, and the Licensor grants You such rights in 65 | consideration of benefits the Licensor receives from making the 66 | Licensed Material available under these terms and conditions. 67 | 68 | 69 | Section 1 -- Definitions. 70 | 71 | a. Adapted Material means material subject to Copyright and Similar 72 | Rights that is derived from or based upon the Licensed Material 73 | and in which the Licensed Material is translated, altered, 74 | arranged, transformed, or otherwise modified in a manner requiring 75 | permission under the Copyright and Similar Rights held by the 76 | Licensor. For purposes of this Public License, where the Licensed 77 | Material is a musical work, performance, or sound recording, 78 | Adapted Material is always produced where the Licensed Material is 79 | synched in timed relation with a moving image. 80 | 81 | b. Adapter's License means the license You apply to Your Copyright 82 | and Similar Rights in Your contributions to Adapted Material in 83 | accordance with the terms and conditions of this Public License. 84 | 85 | c. Copyright and Similar Rights means copyright and/or similar rights 86 | closely related to copyright including, without limitation, 87 | performance, broadcast, sound recording, and Sui Generis Database 88 | Rights, without regard to how the rights are labeled or 89 | categorized. For purposes of this Public License, the rights 90 | specified in Section 2(b)(1)-(2) are not Copyright and Similar 91 | Rights. 92 | 93 | d. Effective Technological Measures means those measures that, in the 94 | absence of proper authority, may not be circumvented under laws 95 | fulfilling obligations under Article 11 of the WIPO Copyright 96 | Treaty adopted on December 20, 1996, and/or similar international 97 | agreements. 98 | 99 | e. Exceptions and Limitations means fair use, fair dealing, and/or 100 | any other exception or limitation to Copyright and Similar Rights 101 | that applies to Your use of the Licensed Material. 102 | 103 | f. Licensed Material means the artistic or literary work, database, 104 | or other material to which the Licensor applied this Public 105 | License. 106 | 107 | g. Licensed Rights means the rights granted to You subject to the 108 | terms and conditions of this Public License, which are limited to 109 | all Copyright and Similar Rights that apply to Your use of the 110 | Licensed Material and that the Licensor has authority to license. 111 | 112 | h. Licensor means the individual(s) or entity(ies) granting rights 113 | under this Public License. 114 | 115 | i. Share means to provide material to the public by any means or 116 | process that requires permission under the Licensed Rights, such 117 | as reproduction, public display, public performance, distribution, 118 | dissemination, communication, or importation, and to make material 119 | available to the public including in ways that members of the 120 | public may access the material from a place and at a time 121 | individually chosen by them. 122 | 123 | j. Sui Generis Database Rights means rights other than copyright 124 | resulting from Directive 96/9/EC of the European Parliament and of 125 | the Council of 11 March 1996 on the legal protection of databases, 126 | as amended and/or succeeded, as well as other essentially 127 | equivalent rights anywhere in the world. 128 | 129 | k. You means the individual or entity exercising the Licensed Rights 130 | under this Public License. Your has a corresponding meaning. 131 | 132 | 133 | Section 2 -- Scope. 134 | 135 | a. License grant. 136 | 137 | 1. Subject to the terms and conditions of this Public License, 138 | the Licensor hereby grants You a worldwide, royalty-free, 139 | non-sublicensable, non-exclusive, irrevocable license to 140 | exercise the Licensed Rights in the Licensed Material to: 141 | 142 | a. reproduce and Share the Licensed Material, in whole or 143 | in part; and 144 | 145 | b. produce, reproduce, and Share Adapted Material. 146 | 147 | 2. Exceptions and Limitations. For the avoidance of doubt, where 148 | Exceptions and Limitations apply to Your use, this Public 149 | License does not apply, and You do not need to comply with 150 | its terms and conditions. 151 | 152 | 3. Term. The term of this Public License is specified in Section 153 | 6(a). 154 | 155 | 4. Media and formats; technical modifications allowed. The 156 | Licensor authorizes You to exercise the Licensed Rights in 157 | all media and formats whether now known or hereafter created, 158 | and to make technical modifications necessary to do so. The 159 | Licensor waives and/or agrees not to assert any right or 160 | authority to forbid You from making technical modifications 161 | necessary to exercise the Licensed Rights, including 162 | technical modifications necessary to circumvent Effective 163 | Technological Measures. For purposes of this Public License, 164 | simply making modifications authorized by this Section 2(a) 165 | (4) never produces Adapted Material. 166 | 167 | 5. Downstream recipients. 168 | 169 | a. Offer from the Licensor -- Licensed Material. Every 170 | recipient of the Licensed Material automatically 171 | receives an offer from the Licensor to exercise the 172 | Licensed Rights under the terms and conditions of this 173 | Public License. 174 | 175 | b. No downstream restrictions. You may not offer or impose 176 | any additional or different terms or conditions on, or 177 | apply any Effective Technological Measures to, the 178 | Licensed Material if doing so restricts exercise of the 179 | Licensed Rights by any recipient of the Licensed 180 | Material. 181 | 182 | 6. No endorsement. Nothing in this Public License constitutes or 183 | may be construed as permission to assert or imply that You 184 | are, or that Your use of the Licensed Material is, connected 185 | with, or sponsored, endorsed, or granted official status by, 186 | the Licensor or others designated to receive attribution as 187 | provided in Section 3(a)(1)(A)(i). 188 | 189 | b. Other rights. 190 | 191 | 1. Moral rights, such as the right of integrity, are not 192 | licensed under this Public License, nor are publicity, 193 | privacy, and/or other similar personality rights; however, to 194 | the extent possible, the Licensor waives and/or agrees not to 195 | assert any such rights held by the Licensor to the limited 196 | extent necessary to allow You to exercise the Licensed 197 | Rights, but not otherwise. 198 | 199 | 2. Patent and trademark rights are not licensed under this 200 | Public License. 201 | 202 | 3. To the extent possible, the Licensor waives any right to 203 | collect royalties from You for the exercise of the Licensed 204 | Rights, whether directly or through a collecting society 205 | under any voluntary or waivable statutory or compulsory 206 | licensing scheme. In all other cases the Licensor expressly 207 | reserves any right to collect such royalties. 208 | 209 | 210 | Section 3 -- License Conditions. 211 | 212 | Your exercise of the Licensed Rights is expressly made subject to the 213 | following conditions. 214 | 215 | a. Attribution. 216 | 217 | 1. If You Share the Licensed Material (including in modified 218 | form), You must: 219 | 220 | a. retain the following if it is supplied by the Licensor 221 | with the Licensed Material: 222 | 223 | i. identification of the creator(s) of the Licensed 224 | Material and any others designated to receive 225 | attribution, in any reasonable manner requested by 226 | the Licensor (including by pseudonym if 227 | designated); 228 | 229 | ii. a copyright notice; 230 | 231 | iii. a notice that refers to this Public License; 232 | 233 | iv. a notice that refers to the disclaimer of 234 | warranties; 235 | 236 | v. a URI or hyperlink to the Licensed Material to the 237 | extent reasonably practicable; 238 | 239 | b. indicate if You modified the Licensed Material and 240 | retain an indication of any previous modifications; and 241 | 242 | c. indicate the Licensed Material is licensed under this 243 | Public License, and include the text of, or the URI or 244 | hyperlink to, this Public License. 245 | 246 | 2. You may satisfy the conditions in Section 3(a)(1) in any 247 | reasonable manner based on the medium, means, and context in 248 | which You Share the Licensed Material. For example, it may be 249 | reasonable to satisfy the conditions by providing a URI or 250 | hyperlink to a resource that includes the required 251 | information. 252 | 253 | 3. If requested by the Licensor, You must remove any of the 254 | information required by Section 3(a)(1)(A) to the extent 255 | reasonably practicable. 256 | 257 | 4. If You Share Adapted Material You produce, the Adapter's 258 | License You apply must not prevent recipients of the Adapted 259 | Material from complying with this Public License. 260 | 261 | 262 | Section 4 -- Sui Generis Database Rights. 263 | 264 | Where the Licensed Rights include Sui Generis Database Rights that 265 | apply to Your use of the Licensed Material: 266 | 267 | a. for the avoidance of doubt, Section 2(a)(1) grants You the right 268 | to extract, reuse, reproduce, and Share all or a substantial 269 | portion of the contents of the database; 270 | 271 | b. if You include all or a substantial portion of the database 272 | contents in a database in which You have Sui Generis Database 273 | Rights, then the database in which You have Sui Generis Database 274 | Rights (but not its individual contents) is Adapted Material; and 275 | 276 | c. You must comply with the conditions in Section 3(a) if You Share 277 | all or a substantial portion of the contents of the database. 278 | 279 | For the avoidance of doubt, this Section 4 supplements and does not 280 | replace Your obligations under this Public License where the Licensed 281 | Rights include other Copyright and Similar Rights. 282 | 283 | 284 | Section 5 -- Disclaimer of Warranties and Limitation of Liability. 285 | 286 | a. UNLESS OTHERWISE SEPARATELY UNDERTAKEN BY THE LICENSOR, TO THE 287 | EXTENT POSSIBLE, THE LICENSOR OFFERS THE LICENSED MATERIAL AS-IS 288 | AND AS-AVAILABLE, AND MAKES NO REPRESENTATIONS OR WARRANTIES OF 289 | ANY KIND CONCERNING THE LICENSED MATERIAL, WHETHER EXPRESS, 290 | IMPLIED, STATUTORY, OR OTHER. THIS INCLUDES, WITHOUT LIMITATION, 291 | WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR 292 | PURPOSE, NON-INFRINGEMENT, ABSENCE OF LATENT OR OTHER DEFECTS, 293 | ACCURACY, OR THE PRESENCE OR ABSENCE OF ERRORS, WHETHER OR NOT 294 | KNOWN OR DISCOVERABLE. WHERE DISCLAIMERS OF WARRANTIES ARE NOT 295 | ALLOWED IN FULL OR IN PART, THIS DISCLAIMER MAY NOT APPLY TO YOU. 296 | 297 | b. TO THE EXTENT POSSIBLE, IN NO EVENT WILL THE LICENSOR BE LIABLE 298 | TO YOU ON ANY LEGAL THEORY (INCLUDING, WITHOUT LIMITATION, 299 | NEGLIGENCE) OR OTHERWISE FOR ANY DIRECT, SPECIAL, INDIRECT, 300 | INCIDENTAL, CONSEQUENTIAL, PUNITIVE, EXEMPLARY, OR OTHER LOSSES, 301 | COSTS, EXPENSES, OR DAMAGES ARISING OUT OF THIS PUBLIC LICENSE OR 302 | USE OF THE LICENSED MATERIAL, EVEN IF THE LICENSOR HAS BEEN 303 | ADVISED OF THE POSSIBILITY OF SUCH LOSSES, COSTS, EXPENSES, OR 304 | DAMAGES. WHERE A LIMITATION OF LIABILITY IS NOT ALLOWED IN FULL OR 305 | IN PART, THIS LIMITATION MAY NOT APPLY TO YOU. 306 | 307 | c. The disclaimer of warranties and limitation of liability provided 308 | above shall be interpreted in a manner that, to the extent 309 | possible, most closely approximates an absolute disclaimer and 310 | waiver of all liability. 311 | 312 | 313 | Section 6 -- Term and Termination. 314 | 315 | a. This Public License applies for the term of the Copyright and 316 | Similar Rights licensed here. However, if You fail to comply with 317 | this Public License, then Your rights under this Public License 318 | terminate automatically. 319 | 320 | b. Where Your right to use the Licensed Material has terminated under 321 | Section 6(a), it reinstates: 322 | 323 | 1. automatically as of the date the violation is cured, provided 324 | it is cured within 30 days of Your discovery of the 325 | violation; or 326 | 327 | 2. upon express reinstatement by the Licensor. 328 | 329 | For the avoidance of doubt, this Section 6(b) does not affect any 330 | right the Licensor may have to seek remedies for Your violations 331 | of this Public License. 332 | 333 | c. For the avoidance of doubt, the Licensor may also offer the 334 | Licensed Material under separate terms or conditions or stop 335 | distributing the Licensed Material at any time; however, doing so 336 | will not terminate this Public License. 337 | 338 | d. Sections 1, 5, 6, 7, and 8 survive termination of this Public 339 | License. 340 | 341 | 342 | Section 7 -- Other Terms and Conditions. 343 | 344 | a. The Licensor shall not be bound by any additional or different 345 | terms or conditions communicated by You unless expressly agreed. 346 | 347 | b. Any arrangements, understandings, or agreements regarding the 348 | Licensed Material not stated herein are separate from and 349 | independent of the terms and conditions of this Public License. 350 | 351 | 352 | Section 8 -- Interpretation. 353 | 354 | a. For the avoidance of doubt, this Public License does not, and 355 | shall not be interpreted to, reduce, limit, restrict, or impose 356 | conditions on any use of the Licensed Material that could lawfully 357 | be made without permission under this Public License. 358 | 359 | b. To the extent possible, if any provision of this Public License is 360 | deemed unenforceable, it shall be automatically reformed to the 361 | minimum extent necessary to make it enforceable. If the provision 362 | cannot be reformed, it shall be severed from this Public License 363 | without affecting the enforceability of the remaining terms and 364 | conditions. 365 | 366 | c. No term or condition of this Public License will be waived and no 367 | failure to comply consented to unless expressly agreed to by the 368 | Licensor. 369 | 370 | d. Nothing in this Public License constitutes or may be interpreted 371 | as a limitation upon, or waiver of, any privileges and immunities 372 | that apply to the Licensor or You, including from the legal 373 | processes of any jurisdiction or authority. 374 | 375 | 376 | ======================================================================= 377 | 378 | Creative Commons is not a party to its public 379 | licenses. Notwithstanding, Creative Commons may elect to apply one of 380 | its public licenses to material it publishes and in those instances 381 | will be considered the “Licensor.” The text of the Creative Commons 382 | public licenses is dedicated to the public domain under the CC0 Public 383 | Domain Dedication. Except for the limited purpose of indicating that 384 | material is shared under a Creative Commons public license or as 385 | otherwise permitted by the Creative Commons policies published at 386 | creativecommons.org/policies, Creative Commons does not authorize the 387 | use of the trademark "Creative Commons" or any other trademark or logo 388 | of Creative Commons without its prior written consent including, 389 | without limitation, in connection with any unauthorized modifications 390 | to any of its public licenses or any other arrangements, 391 | understandings, or agreements concerning use of licensed material. For 392 | the avoidance of doubt, this paragraph does not form part of the 393 | public licenses. 394 | 395 | Creative Commons may be contacted at creativecommons.org. 396 | -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | SCOUR=poetry run scour 2 | SCOUR_OPTS=--enable-viewboxing --enable-comment-stripping 3 | 4 | INKSCAPE:=$(shell command -v inkscape) 5 | 6 | SOURCE_SVG=$(wildcard src/assets/*.svg) 7 | FINAL_SVG=$(addprefix assets/,$(notdir $(SOURCE_SVG))) 8 | FINAL_PNG=$(patsubst %.svg,%.png,$(addprefix assets/,$(notdir $(SOURCE_SVG)))) 9 | 10 | assets: $(FINAL_SVG) $(FINAL_PNG) 11 | 12 | plain: $(SOURCE_SVG) 13 | 14 | $(FINAL_SVG): assets/%.svg: src/assets/%.svg 15 | $(SCOUR) $(SCOUR_OPTS) -i $? -o $@ 16 | 17 | $(FINAL_PNG): assets/%.png: src/assets/%.svg 18 | ifndef INKSCAPE 19 | @echo "You need Inkscape installed to build these files" 20 | exit 1 21 | endif 22 | $(INKSCAPE) --export-filename=$@ $? 23 | 24 | $(SOURCE_SVG): src/assets/%.svg: 25 | ifndef INKSCAPE 26 | @echo "You need Inkscape installed to build these files" 27 | exit 1 28 | endif 29 | $(INKSCAPE) --export-plain-svg --export-type=svg --export-filename=$@ $@ 30 | -------------------------------------------------------------------------------- /README.rst: -------------------------------------------------------------------------------- 1 | Read the Docs Guidelines 2 | ======================== 3 | 4 | The following resources outline style, branding, and development guidelines for 5 | contributors to the Read the Docs community and anyone wishing to use licensed 6 | trademarks of Read the Docs, Inc. 7 | 8 | This document is readable on Read the Docs: https://brand-guidelines.readthedocs.org 9 | -------------------------------------------------------------------------------- /assets/logo-dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/readthedocs/guidelines/6e3fbacb2732a2fcc7f9d0ca5041f9f47328415d/assets/logo-dark.png -------------------------------------------------------------------------------- /assets/logo-dark.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | image/svg+xml 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /assets/logo-light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/readthedocs/guidelines/6e3fbacb2732a2fcc7f9d0ca5041f9f47328415d/assets/logo-light.png -------------------------------------------------------------------------------- /assets/logo-light.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | image/svg+xml 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /assets/logo-opengraph.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/readthedocs/guidelines/6e3fbacb2732a2fcc7f9d0ca5041f9f47328415d/assets/logo-opengraph.png -------------------------------------------------------------------------------- /assets/logo-opengraph.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /assets/logo-wordmark-dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/readthedocs/guidelines/6e3fbacb2732a2fcc7f9d0ca5041f9f47328415d/assets/logo-wordmark-dark.png -------------------------------------------------------------------------------- /assets/logo-wordmark-dark.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | image/svg+xml 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 | -------------------------------------------------------------------------------- /assets/logo-wordmark-light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/readthedocs/guidelines/6e3fbacb2732a2fcc7f9d0ca5041f9f47328415d/assets/logo-wordmark-light.png -------------------------------------------------------------------------------- /assets/logo-wordmark-light.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | image/svg+xml 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 | -------------------------------------------------------------------------------- /assets/logo-wordmark-vertical-compact-dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/readthedocs/guidelines/6e3fbacb2732a2fcc7f9d0ca5041f9f47328415d/assets/logo-wordmark-vertical-compact-dark.png -------------------------------------------------------------------------------- /assets/logo-wordmark-vertical-compact-dark.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /assets/logo-wordmark-vertical-compact-light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/readthedocs/guidelines/6e3fbacb2732a2fcc7f9d0ca5041f9f47328415d/assets/logo-wordmark-vertical-compact-light.png -------------------------------------------------------------------------------- /assets/logo-wordmark-vertical-compact-light.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /assets/logo-wordmark-vertical-dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/readthedocs/guidelines/6e3fbacb2732a2fcc7f9d0ca5041f9f47328415d/assets/logo-wordmark-vertical-dark.png -------------------------------------------------------------------------------- /assets/logo-wordmark-vertical-dark.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /assets/logo-wordmark-vertical-light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/readthedocs/guidelines/6e3fbacb2732a2fcc7f9d0ca5041f9f47328415d/assets/logo-wordmark-vertical-light.png -------------------------------------------------------------------------------- /assets/logo-wordmark-vertical-light.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /docs/Makefile: -------------------------------------------------------------------------------- 1 | # Makefile for Sphinx documentation 2 | # 3 | 4 | # You can set these variables from the command line. 5 | SPHINXOPTS = 6 | SPHINXBUILD = poetry run sphinx-build 7 | PAPER = 8 | BUILDDIR = _build 9 | 10 | # User-friendly check for sphinx-build 11 | ifeq ($(shell which $(SPHINXBUILD) >/dev/null 2>&1; echo $$?), 1) 12 | $(error The '$(SPHINXBUILD)' command was not found. Make sure you have Sphinx installed, then set the SPHINXBUILD environment variable to point to the full path of the '$(SPHINXBUILD)' executable. Alternatively you can add the directory with the executable to your PATH. If you don't have Sphinx installed, grab it from http://sphinx-doc.org/) 13 | endif 14 | 15 | # Internal variables. 16 | PAPEROPT_a4 = -D latex_paper_size=a4 17 | PAPEROPT_letter = -D latex_paper_size=letter 18 | ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) . 19 | # the i18n builder cannot share the environment and doctrees with the others 20 | I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) . 21 | 22 | .PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest gettext 23 | 24 | help: 25 | @echo "Please use \`make ' where is one of" 26 | @echo " html to make standalone HTML files" 27 | @echo " dirhtml to make HTML files named index.html in directories" 28 | @echo " singlehtml to make a single large HTML file" 29 | @echo " pickle to make pickle files" 30 | @echo " json to make JSON files" 31 | @echo " htmlhelp to make HTML files and a HTML help project" 32 | @echo " qthelp to make HTML files and a qthelp project" 33 | @echo " devhelp to make HTML files and a Devhelp project" 34 | @echo " epub to make an epub" 35 | @echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter" 36 | @echo " latexpdf to make LaTeX files and run them through pdflatex" 37 | @echo " latexpdfja to make LaTeX files and run them through platex/dvipdfmx" 38 | @echo " text to make text files" 39 | @echo " man to make manual pages" 40 | @echo " texinfo to make Texinfo files" 41 | @echo " info to make Texinfo files and run them through makeinfo" 42 | @echo " gettext to make PO message catalogs" 43 | @echo " changes to make an overview of all changed/added/deprecated items" 44 | @echo " xml to make Docutils-native XML files" 45 | @echo " pseudoxml to make pseudoxml-XML files for display purposes" 46 | @echo " linkcheck to check all external links for integrity" 47 | @echo " doctest to run all doctests embedded in the documentation (if enabled)" 48 | 49 | clean: 50 | rm -rf $(BUILDDIR)/* 51 | 52 | html: 53 | $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html 54 | @echo 55 | @echo "Build finished. The HTML pages are in $(BUILDDIR)/html." 56 | 57 | dirhtml: 58 | $(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml 59 | @echo 60 | @echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml." 61 | 62 | singlehtml: 63 | $(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml 64 | @echo 65 | @echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml." 66 | 67 | pickle: 68 | $(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle 69 | @echo 70 | @echo "Build finished; now you can process the pickle files." 71 | 72 | json: 73 | $(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json 74 | @echo 75 | @echo "Build finished; now you can process the JSON files." 76 | 77 | htmlhelp: 78 | $(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp 79 | @echo 80 | @echo "Build finished; now you can run HTML Help Workshop with the" \ 81 | ".hhp project file in $(BUILDDIR)/htmlhelp." 82 | 83 | qthelp: 84 | $(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp 85 | @echo 86 | @echo "Build finished; now you can run "qcollectiongenerator" with the" \ 87 | ".qhcp project file in $(BUILDDIR)/qthelp, like this:" 88 | @echo "# qcollectiongenerator $(BUILDDIR)/qthelp/ReadtheDocsGuidelines.qhcp" 89 | @echo "To view the help file:" 90 | @echo "# assistant -collectionFile $(BUILDDIR)/qthelp/ReadtheDocsGuidelines.qhc" 91 | 92 | devhelp: 93 | $(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp 94 | @echo 95 | @echo "Build finished." 96 | @echo "To view the help file:" 97 | @echo "# mkdir -p $$HOME/.local/share/devhelp/ReadtheDocsGuidelines" 98 | @echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/ReadtheDocsGuidelines" 99 | @echo "# devhelp" 100 | 101 | epub: 102 | $(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub 103 | @echo 104 | @echo "Build finished. The epub file is in $(BUILDDIR)/epub." 105 | 106 | latex: 107 | $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex 108 | @echo 109 | @echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex." 110 | @echo "Run \`make' in that directory to run these through (pdf)latex" \ 111 | "(use \`make latexpdf' here to do that automatically)." 112 | 113 | latexpdf: 114 | $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex 115 | @echo "Running LaTeX files through pdflatex..." 116 | $(MAKE) -C $(BUILDDIR)/latex all-pdf 117 | @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex." 118 | 119 | latexpdfja: 120 | $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex 121 | @echo "Running LaTeX files through platex and dvipdfmx..." 122 | $(MAKE) -C $(BUILDDIR)/latex all-pdf-ja 123 | @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex." 124 | 125 | text: 126 | $(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text 127 | @echo 128 | @echo "Build finished. The text files are in $(BUILDDIR)/text." 129 | 130 | man: 131 | $(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man 132 | @echo 133 | @echo "Build finished. The manual pages are in $(BUILDDIR)/man." 134 | 135 | texinfo: 136 | $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo 137 | @echo 138 | @echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo." 139 | @echo "Run \`make' in that directory to run these through makeinfo" \ 140 | "(use \`make info' here to do that automatically)." 141 | 142 | info: 143 | $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo 144 | @echo "Running Texinfo files through makeinfo..." 145 | make -C $(BUILDDIR)/texinfo info 146 | @echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo." 147 | 148 | gettext: 149 | $(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale 150 | @echo 151 | @echo "Build finished. The message catalogs are in $(BUILDDIR)/locale." 152 | 153 | changes: 154 | $(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes 155 | @echo 156 | @echo "The overview file is in $(BUILDDIR)/changes." 157 | 158 | linkcheck: 159 | $(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck 160 | @echo 161 | @echo "Link check complete; look for any errors in the above output " \ 162 | "or in $(BUILDDIR)/linkcheck/output.txt." 163 | 164 | doctest: 165 | $(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest 166 | @echo "Testing of doctests in the sources finished, look at the " \ 167 | "results in $(BUILDDIR)/doctest/output.txt." 168 | 169 | xml: 170 | $(SPHINXBUILD) -b xml $(ALLSPHINXOPTS) $(BUILDDIR)/xml 171 | @echo 172 | @echo "Build finished. The XML files are in $(BUILDDIR)/xml." 173 | 174 | pseudoxml: 175 | $(SPHINXBUILD) -b pseudoxml $(ALLSPHINXOPTS) $(BUILDDIR)/pseudoxml 176 | @echo 177 | @echo "Build finished. The pseudo-XML files are in $(BUILDDIR)/pseudoxml." 178 | -------------------------------------------------------------------------------- /docs/branding.rst: -------------------------------------------------------------------------------- 1 | Branding Guidelines 2 | =================== 3 | 4 | Acceptable use 5 | -------------- 6 | 7 | Read the Docs logos and other trademarks are available for use under the 8 | `CC-BY 4.0` license. This license is valid as long as you **do not**: 9 | 10 | * alter our logos in any way 11 | * place a logo in such close proximity to other content that it is 12 | indistinguishable 13 | * make our logo the most distinctive or prominent feature on your website, 14 | printed material or other content 15 | * use our logos in a way that suggests any type of association or partnership 16 | with Read the Docs, Inc. or approval, sponsorship or endorsement by Read the 17 | Docs, Inc. (unless allowed via a license from us) 18 | * use our logos in a way that is harmful, deceptive, obscene or otherwise 19 | objectionable to the average person 20 | * use our logos on websites or other places containing content associated with 21 | hate speech, pornography, gambling or illegal activities 22 | * use our logos to, or in connection with, content that disparages us or sullies 23 | our reputation 24 | 25 | Brand name 26 | ---------- 27 | 28 | Our brand name is officially **Read the Docs**. If you want to use an acronym after defining the full brand name, you should use **RTD**. 29 | 30 | Logos 31 | ----- 32 | 33 | .. image:: ../assets/logo-dark.png 34 | :width: 200px 35 | 36 | :Use: Dark color logo for use on light colors 37 | :License: `CC-BY 4.0` 38 | :SVG: :download:`logo-dark.svg <../assets/logo-dark.svg>` 39 | :PNG: :download:`logo-dark.png <../assets/logo-dark.png>` 40 | 41 | .. image:: ../assets/logo-light.png 42 | :width: 200px 43 | 44 | :Use: Light color logo for use on dark colors 45 | :License: `CC-BY 4.0` 46 | :SVG: :download:`logo-light.svg <../assets/logo-light.svg>` 47 | :PNG: :download:`logo-light.png <../assets/logo-light.png>` 48 | 49 | .. image:: ../assets/logo-wordmark-dark.png 50 | :width: 400px 51 | 52 | :Use: Dark color logo and wordmark for use on light colors 53 | :License: `CC-BY 4.0` 54 | :SVG: :download:`logo-wordmark-dark.svg <../assets/logo-wordmark-dark.svg>` 55 | :PNG: :download:`logo-wordmark-dark.png <../assets/logo-wordmark-dark.png>` 56 | 57 | .. image:: ../assets/logo-wordmark-light.png 58 | :width: 400px 59 | 60 | :Use: Light color logo and wordmark for use on dark colors 61 | :License: `CC-BY 4.0` 62 | :SVG: :download:`logo-wordmark-light.svg <../assets/logo-wordmark-light.svg>` 63 | :PNG: :download:`logo-wordmark-light.png <../assets/logo-wordmark-light.png>` 64 | 65 | .. image:: ../assets/logo-wordmark-vertical-dark.png 66 | :width: 400px 67 | 68 | :Use: Dark color vertical logo and wordmark for use on light colors 69 | :License: `CC-BY 4.0` 70 | :SVG: :download:`logo-wordmark-dark.svg <../assets/logo-wordmark-vertical-dark.svg>` 71 | :PNG: :download:`logo-wordmark-dark.png <../assets/logo-wordmark-vertical-dark.png>` 72 | 73 | .. image:: ../assets/logo-wordmark-vertical-light.png 74 | :width: 400px 75 | 76 | :Use: Light color vertical logo and wordmark for use on dark colors 77 | :License: `CC-BY 4.0` 78 | :SVG: :download:`logo-wordmark-light.svg <../assets/logo-wordmark-vertical-light.svg>` 79 | :PNG: :download:`logo-wordmark-light.png <../assets/logo-wordmark-vertical-light.png>` 80 | 81 | .. image:: ../assets/logo-wordmark-vertical-compact-dark.png 82 | :width: 400px 83 | 84 | :Use: Dark color vertically compact logo and wordmark for use on light colors 85 | :License: `CC-BY 4.0` 86 | :SVG: :download:`logo-wordmark-dark.svg <../assets/logo-wordmark-vertical-compact-dark.svg>` 87 | :PNG: :download:`logo-wordmark-dark.png <../assets/logo-wordmark-vertical-compact-dark.png>` 88 | 89 | .. image:: ../assets/logo-wordmark-vertical-compact-light.png 90 | :width: 400px 91 | 92 | :Use: Light color vertically compact logo and wordmark for use on dark colors 93 | :License: `CC-BY 4.0` 94 | :SVG: :download:`logo-wordmark-light.svg <../assets/logo-wordmark-vertical-compact-light.svg>` 95 | :PNG: :download:`logo-wordmark-light.png <../assets/logo-wordmark-vertical-compact-light.png>` 96 | 97 | License 98 | ------- 99 | 100 | All content, including this guideline, are, except where noted, available under 101 | the `CC-BY 4.0`_ copyright license. This guideline is adapted from the 102 | `Firefox Branding Guideline`_ 103 | 104 | .. _CC-BY 4.0: http://creativecommons.org/licenses/by/4.0/ 105 | .. _Firefox Branding Guideline: https://www.mozilla.org/en-US/styleguide/identity/firefox/branding/ 106 | -------------------------------------------------------------------------------- /docs/conf.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | 3 | import sys 4 | import os 5 | 6 | extensions = [] 7 | 8 | project = u'Read the Docs Branding Guidelines' 9 | copyright = u'2014, Read the Docs, Inc.' 10 | version = '1.0' 11 | release = '1.0' 12 | 13 | source_suffix = '.rst' 14 | master_doc = 'index' 15 | exclude_patterns = ['_build'] 16 | 17 | html_theme = 'sphinx_rtd_theme' 18 | 19 | #htmlhelp_basename = 'ReadtheDocsGuidelinesdoc' 20 | 21 | #latex_elements = {} 22 | 23 | #latex_documents = [ 24 | # ('index', 'ReadtheDocsBrandingGuidelines.tex', 25 | # u'Read the Docs Branding Guidelines Documentation', 26 | # u'Read the Docs, Inc', 'manual'), 27 | #] 28 | # 29 | #man_pages = [ 30 | # ('index', 'readthedocsguidelines', u'Read the Docs Guidelines Documentation', 31 | # [u'Anthony Johnson'], 1) 32 | #] 33 | # 34 | #texinfo_documents = [ 35 | # ('index', 'ReadtheDocsGuidelines', u'Read the Docs Guidelines Documentation', 36 | # u'Anthony Johnson', 'ReadtheDocsGuidelines', 'One line description of project.', 37 | # 'Miscellaneous'), 38 | #] 39 | -------------------------------------------------------------------------------- /docs/index.rst: -------------------------------------------------------------------------------- 1 | .. include:: ../README.rst 2 | 3 | .. toctree:: 4 | :maxdepth: 2 5 | 6 | branding 7 | -------------------------------------------------------------------------------- /poetry.lock: -------------------------------------------------------------------------------- 1 | [[package]] 2 | name = "alabaster" 3 | version = "0.7.12" 4 | description = "A configurable sidebar-enabled Sphinx theme" 5 | category = "main" 6 | optional = false 7 | python-versions = "*" 8 | 9 | [[package]] 10 | name = "babel" 11 | version = "2.10.1" 12 | description = "Internationalization utilities" 13 | category = "main" 14 | optional = false 15 | python-versions = ">=3.6" 16 | 17 | [package.dependencies] 18 | pytz = ">=2015.7" 19 | 20 | [[package]] 21 | name = "certifi" 22 | version = "2021.10.8" 23 | description = "Python package for providing Mozilla's CA Bundle." 24 | category = "main" 25 | optional = false 26 | python-versions = "*" 27 | 28 | [[package]] 29 | name = "charset-normalizer" 30 | version = "2.0.12" 31 | description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet." 32 | category = "main" 33 | optional = false 34 | python-versions = ">=3.5.0" 35 | 36 | [package.extras] 37 | unicode_backport = ["unicodedata2"] 38 | 39 | [[package]] 40 | name = "colorama" 41 | version = "0.4.4" 42 | description = "Cross-platform colored terminal text." 43 | category = "main" 44 | optional = false 45 | python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" 46 | 47 | [[package]] 48 | name = "docutils" 49 | version = "0.17.1" 50 | description = "Docutils -- Python Documentation Utilities" 51 | category = "main" 52 | optional = false 53 | python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" 54 | 55 | [[package]] 56 | name = "idna" 57 | version = "3.3" 58 | description = "Internationalized Domain Names in Applications (IDNA)" 59 | category = "main" 60 | optional = false 61 | python-versions = ">=3.5" 62 | 63 | [[package]] 64 | name = "imagesize" 65 | version = "1.3.0" 66 | description = "Getting image size from png/jpeg/jpeg2000/gif file" 67 | category = "main" 68 | optional = false 69 | python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" 70 | 71 | [[package]] 72 | name = "importlib-metadata" 73 | version = "4.11.3" 74 | description = "Read metadata from Python packages" 75 | category = "main" 76 | optional = false 77 | python-versions = ">=3.7" 78 | 79 | [package.dependencies] 80 | zipp = ">=0.5" 81 | 82 | [package.extras] 83 | docs = ["sphinx", "jaraco.packaging (>=9)", "rst.linker (>=1.9)"] 84 | perf = ["ipython"] 85 | testing = ["pytest (>=6)", "pytest-checkdocs (>=2.4)", "pytest-flake8", "pytest-cov", "pytest-enabler (>=1.0.1)", "packaging", "pyfakefs", "flufl.flake8", "pytest-perf (>=0.9.2)", "pytest-black (>=0.3.7)", "pytest-mypy (>=0.9.1)", "importlib-resources (>=1.3)"] 86 | 87 | [[package]] 88 | name = "jinja2" 89 | version = "3.1.2" 90 | description = "A very fast and expressive template engine." 91 | category = "main" 92 | optional = false 93 | python-versions = ">=3.7" 94 | 95 | [package.dependencies] 96 | MarkupSafe = ">=2.0" 97 | 98 | [package.extras] 99 | i18n = ["Babel (>=2.7)"] 100 | 101 | [[package]] 102 | name = "markupsafe" 103 | version = "2.1.1" 104 | description = "Safely add untrusted strings to HTML/XML markup." 105 | category = "main" 106 | optional = false 107 | python-versions = ">=3.7" 108 | 109 | [[package]] 110 | name = "packaging" 111 | version = "21.3" 112 | description = "Core utilities for Python packages" 113 | category = "main" 114 | optional = false 115 | python-versions = ">=3.6" 116 | 117 | [package.dependencies] 118 | pyparsing = ">=2.0.2,<3.0.5 || >3.0.5" 119 | 120 | [[package]] 121 | name = "pygments" 122 | version = "2.12.0" 123 | description = "Pygments is a syntax highlighting package written in Python." 124 | category = "main" 125 | optional = false 126 | python-versions = ">=3.6" 127 | 128 | [[package]] 129 | name = "pyparsing" 130 | version = "3.0.9" 131 | description = "pyparsing module - Classes and methods to define and execute parsing grammars" 132 | category = "main" 133 | optional = false 134 | python-versions = ">=3.6.8" 135 | 136 | [package.extras] 137 | diagrams = ["railroad-diagrams", "jinja2"] 138 | 139 | [[package]] 140 | name = "pytz" 141 | version = "2022.1" 142 | description = "World timezone definitions, modern and historical" 143 | category = "main" 144 | optional = false 145 | python-versions = "*" 146 | 147 | [[package]] 148 | name = "requests" 149 | version = "2.27.1" 150 | description = "Python HTTP for Humans." 151 | category = "main" 152 | optional = false 153 | python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" 154 | 155 | [package.dependencies] 156 | certifi = ">=2017.4.17" 157 | charset-normalizer = {version = ">=2.0.0,<2.1.0", markers = "python_version >= \"3\""} 158 | idna = {version = ">=2.5,<4", markers = "python_version >= \"3\""} 159 | urllib3 = ">=1.21.1,<1.27" 160 | 161 | [package.extras] 162 | socks = ["PySocks (>=1.5.6,!=1.5.7)", "win-inet-pton"] 163 | use_chardet_on_py3 = ["chardet (>=3.0.2,<5)"] 164 | 165 | [[package]] 166 | name = "scour" 167 | version = "0.38.2" 168 | description = "Scour SVG Optimizer" 169 | category = "main" 170 | optional = false 171 | python-versions = "*" 172 | 173 | [package.dependencies] 174 | six = ">=1.9.0" 175 | 176 | [[package]] 177 | name = "six" 178 | version = "1.16.0" 179 | description = "Python 2 and 3 compatibility utilities" 180 | category = "main" 181 | optional = false 182 | python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*" 183 | 184 | [[package]] 185 | name = "snowballstemmer" 186 | version = "2.2.0" 187 | description = "This package provides 29 stemmers for 28 languages generated from Snowball algorithms." 188 | category = "main" 189 | optional = false 190 | python-versions = "*" 191 | 192 | [[package]] 193 | name = "sphinx" 194 | version = "4.5.0" 195 | description = "Python documentation generator" 196 | category = "main" 197 | optional = false 198 | python-versions = ">=3.6" 199 | 200 | [package.dependencies] 201 | alabaster = ">=0.7,<0.8" 202 | babel = ">=1.3" 203 | colorama = {version = ">=0.3.5", markers = "sys_platform == \"win32\""} 204 | docutils = ">=0.14,<0.18" 205 | imagesize = "*" 206 | importlib-metadata = {version = ">=4.4", markers = "python_version < \"3.10\""} 207 | Jinja2 = ">=2.3" 208 | packaging = "*" 209 | Pygments = ">=2.0" 210 | requests = ">=2.5.0" 211 | snowballstemmer = ">=1.1" 212 | sphinxcontrib-applehelp = "*" 213 | sphinxcontrib-devhelp = "*" 214 | sphinxcontrib-htmlhelp = ">=2.0.0" 215 | sphinxcontrib-jsmath = "*" 216 | sphinxcontrib-qthelp = "*" 217 | sphinxcontrib-serializinghtml = ">=1.1.5" 218 | 219 | [package.extras] 220 | docs = ["sphinxcontrib-websupport"] 221 | lint = ["flake8 (>=3.5.0)", "isort", "mypy (>=0.931)", "docutils-stubs", "types-typed-ast", "types-requests"] 222 | test = ["pytest", "pytest-cov", "html5lib", "cython", "typed-ast"] 223 | 224 | [[package]] 225 | name = "sphinx-rtd-theme" 226 | version = "1.0.0" 227 | description = "Read the Docs theme for Sphinx" 228 | category = "main" 229 | optional = false 230 | python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*" 231 | 232 | [package.dependencies] 233 | docutils = "<0.18" 234 | sphinx = ">=1.6" 235 | 236 | [package.extras] 237 | dev = ["transifex-client", "sphinxcontrib-httpdomain", "bump2version"] 238 | 239 | [[package]] 240 | name = "sphinxcontrib-applehelp" 241 | version = "1.0.2" 242 | description = "sphinxcontrib-applehelp is a sphinx extension which outputs Apple help books" 243 | category = "main" 244 | optional = false 245 | python-versions = ">=3.5" 246 | 247 | [package.extras] 248 | lint = ["flake8", "mypy", "docutils-stubs"] 249 | test = ["pytest"] 250 | 251 | [[package]] 252 | name = "sphinxcontrib-devhelp" 253 | version = "1.0.2" 254 | description = "sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp document." 255 | category = "main" 256 | optional = false 257 | python-versions = ">=3.5" 258 | 259 | [package.extras] 260 | lint = ["flake8", "mypy", "docutils-stubs"] 261 | test = ["pytest"] 262 | 263 | [[package]] 264 | name = "sphinxcontrib-htmlhelp" 265 | version = "2.0.0" 266 | description = "sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files" 267 | category = "main" 268 | optional = false 269 | python-versions = ">=3.6" 270 | 271 | [package.extras] 272 | lint = ["flake8", "mypy", "docutils-stubs"] 273 | test = ["pytest", "html5lib"] 274 | 275 | [[package]] 276 | name = "sphinxcontrib-jsmath" 277 | version = "1.0.1" 278 | description = "A sphinx extension which renders display math in HTML via JavaScript" 279 | category = "main" 280 | optional = false 281 | python-versions = ">=3.5" 282 | 283 | [package.extras] 284 | test = ["pytest", "flake8", "mypy"] 285 | 286 | [[package]] 287 | name = "sphinxcontrib-qthelp" 288 | version = "1.0.3" 289 | description = "sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp document." 290 | category = "main" 291 | optional = false 292 | python-versions = ">=3.5" 293 | 294 | [package.extras] 295 | lint = ["flake8", "mypy", "docutils-stubs"] 296 | test = ["pytest"] 297 | 298 | [[package]] 299 | name = "sphinxcontrib-serializinghtml" 300 | version = "1.1.5" 301 | description = "sphinxcontrib-serializinghtml is a sphinx extension which outputs \"serialized\" HTML files (json and pickle)." 302 | category = "main" 303 | optional = false 304 | python-versions = ">=3.5" 305 | 306 | [package.extras] 307 | lint = ["flake8", "mypy", "docutils-stubs"] 308 | test = ["pytest"] 309 | 310 | [[package]] 311 | name = "urllib3" 312 | version = "1.26.9" 313 | description = "HTTP library with thread-safe connection pooling, file post, and more." 314 | category = "main" 315 | optional = false 316 | python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, <4" 317 | 318 | [package.extras] 319 | brotli = ["brotlicffi (>=0.8.0)", "brotli (>=1.0.9)", "brotlipy (>=0.6.0)"] 320 | secure = ["pyOpenSSL (>=0.14)", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "certifi", "ipaddress"] 321 | socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] 322 | 323 | [[package]] 324 | name = "zipp" 325 | version = "3.8.0" 326 | description = "Backport of pathlib-compatible object wrapper for zip files" 327 | category = "main" 328 | optional = false 329 | python-versions = ">=3.7" 330 | 331 | [package.extras] 332 | docs = ["sphinx", "jaraco.packaging (>=9)", "rst.linker (>=1.9)"] 333 | testing = ["pytest (>=6)", "pytest-checkdocs (>=2.4)", "pytest-flake8", "pytest-cov", "pytest-enabler (>=1.0.1)", "jaraco.itertools", "func-timeout", "pytest-black (>=0.3.7)", "pytest-mypy (>=0.9.1)"] 334 | 335 | [metadata] 336 | lock-version = "1.1" 337 | python-versions = "^3.8" 338 | content-hash = "395362be8cd60c5721b902f1c6b0659170c5c5beee8e4510efc2d58fa658f372" 339 | 340 | [metadata.files] 341 | alabaster = [ 342 | {file = "alabaster-0.7.12-py2.py3-none-any.whl", hash = "sha256:446438bdcca0e05bd45ea2de1668c1d9b032e1a9154c2c259092d77031ddd359"}, 343 | {file = "alabaster-0.7.12.tar.gz", hash = "sha256:a661d72d58e6ea8a57f7a86e37d86716863ee5e92788398526d58b26a4e4dc02"}, 344 | ] 345 | babel = [ 346 | {file = "Babel-2.10.1-py3-none-any.whl", hash = "sha256:3f349e85ad3154559ac4930c3918247d319f21910d5ce4b25d439ed8693b98d2"}, 347 | {file = "Babel-2.10.1.tar.gz", hash = "sha256:98aeaca086133efb3e1e2aad0396987490c8425929ddbcfe0550184fdc54cd13"}, 348 | ] 349 | certifi = [ 350 | {file = "certifi-2021.10.8-py2.py3-none-any.whl", hash = "sha256:d62a0163eb4c2344ac042ab2bdf75399a71a2d8c7d47eac2e2ee91b9d6339569"}, 351 | {file = "certifi-2021.10.8.tar.gz", hash = "sha256:78884e7c1d4b00ce3cea67b44566851c4343c120abd683433ce934a68ea58872"}, 352 | ] 353 | charset-normalizer = [ 354 | {file = "charset-normalizer-2.0.12.tar.gz", hash = "sha256:2857e29ff0d34db842cd7ca3230549d1a697f96ee6d3fb071cfa6c7393832597"}, 355 | {file = "charset_normalizer-2.0.12-py3-none-any.whl", hash = "sha256:6881edbebdb17b39b4eaaa821b438bf6eddffb4468cf344f09f89def34a8b1df"}, 356 | ] 357 | colorama = [ 358 | {file = "colorama-0.4.4-py2.py3-none-any.whl", hash = "sha256:9f47eda37229f68eee03b24b9748937c7dc3868f906e8ba69fbcbdd3bc5dc3e2"}, 359 | {file = "colorama-0.4.4.tar.gz", hash = "sha256:5941b2b48a20143d2267e95b1c2a7603ce057ee39fd88e7329b0c292aa16869b"}, 360 | ] 361 | docutils = [ 362 | {file = "docutils-0.17.1-py2.py3-none-any.whl", hash = "sha256:cf316c8370a737a022b72b56874f6602acf974a37a9fba42ec2876387549fc61"}, 363 | {file = "docutils-0.17.1.tar.gz", hash = "sha256:686577d2e4c32380bb50cbb22f575ed742d58168cee37e99117a854bcd88f125"}, 364 | ] 365 | idna = [ 366 | {file = "idna-3.3-py3-none-any.whl", hash = "sha256:84d9dd047ffa80596e0f246e2eab0b391788b0503584e8945f2368256d2735ff"}, 367 | {file = "idna-3.3.tar.gz", hash = "sha256:9d643ff0a55b762d5cdb124b8eaa99c66322e2157b69160bc32796e824360e6d"}, 368 | ] 369 | imagesize = [ 370 | {file = "imagesize-1.3.0-py2.py3-none-any.whl", hash = "sha256:1db2f82529e53c3e929e8926a1fa9235aa82d0bd0c580359c67ec31b2fddaa8c"}, 371 | {file = "imagesize-1.3.0.tar.gz", hash = "sha256:cd1750d452385ca327479d45b64d9c7729ecf0b3969a58148298c77092261f9d"}, 372 | ] 373 | importlib-metadata = [ 374 | {file = "importlib_metadata-4.11.3-py3-none-any.whl", hash = "sha256:1208431ca90a8cca1a6b8af391bb53c1a2db74e5d1cef6ddced95d4b2062edc6"}, 375 | {file = "importlib_metadata-4.11.3.tar.gz", hash = "sha256:ea4c597ebf37142f827b8f39299579e31685c31d3a438b59f469406afd0f2539"}, 376 | ] 377 | jinja2 = [ 378 | {file = "Jinja2-3.1.2-py3-none-any.whl", hash = "sha256:6088930bfe239f0e6710546ab9c19c9ef35e29792895fed6e6e31a023a182a61"}, 379 | {file = "Jinja2-3.1.2.tar.gz", hash = "sha256:31351a702a408a9e7595a8fc6150fc3f43bb6bf7e319770cbc0db9df9437e852"}, 380 | ] 381 | markupsafe = [ 382 | {file = "MarkupSafe-2.1.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:86b1f75c4e7c2ac2ccdaec2b9022845dbb81880ca318bb7a0a01fbf7813e3812"}, 383 | {file = "MarkupSafe-2.1.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:f121a1420d4e173a5d96e47e9a0c0dcff965afdf1626d28de1460815f7c4ee7a"}, 384 | {file = "MarkupSafe-2.1.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a49907dd8420c5685cfa064a1335b6754b74541bbb3706c259c02ed65b644b3e"}, 385 | {file = "MarkupSafe-2.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:10c1bfff05d95783da83491be968e8fe789263689c02724e0c691933c52994f5"}, 386 | {file = "MarkupSafe-2.1.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b7bd98b796e2b6553da7225aeb61f447f80a1ca64f41d83612e6139ca5213aa4"}, 387 | {file = "MarkupSafe-2.1.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:b09bf97215625a311f669476f44b8b318b075847b49316d3e28c08e41a7a573f"}, 388 | {file = "MarkupSafe-2.1.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:694deca8d702d5db21ec83983ce0bb4b26a578e71fbdbd4fdcd387daa90e4d5e"}, 389 | {file = "MarkupSafe-2.1.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:efc1913fd2ca4f334418481c7e595c00aad186563bbc1ec76067848c7ca0a933"}, 390 | {file = "MarkupSafe-2.1.1-cp310-cp310-win32.whl", hash = "sha256:4a33dea2b688b3190ee12bd7cfa29d39c9ed176bda40bfa11099a3ce5d3a7ac6"}, 391 | {file = "MarkupSafe-2.1.1-cp310-cp310-win_amd64.whl", hash = "sha256:dda30ba7e87fbbb7eab1ec9f58678558fd9a6b8b853530e176eabd064da81417"}, 392 | {file = "MarkupSafe-2.1.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:671cd1187ed5e62818414afe79ed29da836dde67166a9fac6d435873c44fdd02"}, 393 | {file = "MarkupSafe-2.1.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3799351e2336dc91ea70b034983ee71cf2f9533cdff7c14c90ea126bfd95d65a"}, 394 | {file = "MarkupSafe-2.1.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e72591e9ecd94d7feb70c1cbd7be7b3ebea3f548870aa91e2732960fa4d57a37"}, 395 | {file = "MarkupSafe-2.1.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6fbf47b5d3728c6aea2abb0589b5d30459e369baa772e0f37a0320185e87c980"}, 396 | {file = "MarkupSafe-2.1.1-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:d5ee4f386140395a2c818d149221149c54849dfcfcb9f1debfe07a8b8bd63f9a"}, 397 | {file = "MarkupSafe-2.1.1-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:bcb3ed405ed3222f9904899563d6fc492ff75cce56cba05e32eff40e6acbeaa3"}, 398 | {file = "MarkupSafe-2.1.1-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:e1c0b87e09fa55a220f058d1d49d3fb8df88fbfab58558f1198e08c1e1de842a"}, 399 | {file = "MarkupSafe-2.1.1-cp37-cp37m-win32.whl", hash = "sha256:8dc1c72a69aa7e082593c4a203dcf94ddb74bb5c8a731e4e1eb68d031e8498ff"}, 400 | {file = "MarkupSafe-2.1.1-cp37-cp37m-win_amd64.whl", hash = "sha256:97a68e6ada378df82bc9f16b800ab77cbf4b2fada0081794318520138c088e4a"}, 401 | {file = "MarkupSafe-2.1.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:e8c843bbcda3a2f1e3c2ab25913c80a3c5376cd00c6e8c4a86a89a28c8dc5452"}, 402 | {file = "MarkupSafe-2.1.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0212a68688482dc52b2d45013df70d169f542b7394fc744c02a57374a4207003"}, 403 | {file = "MarkupSafe-2.1.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8e576a51ad59e4bfaac456023a78f6b5e6e7651dcd383bcc3e18d06f9b55d6d1"}, 404 | {file = "MarkupSafe-2.1.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4b9fe39a2ccc108a4accc2676e77da025ce383c108593d65cc909add5c3bd601"}, 405 | {file = "MarkupSafe-2.1.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:96e37a3dc86e80bf81758c152fe66dbf60ed5eca3d26305edf01892257049925"}, 406 | {file = "MarkupSafe-2.1.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:6d0072fea50feec76a4c418096652f2c3238eaa014b2f94aeb1d56a66b41403f"}, 407 | {file = "MarkupSafe-2.1.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:089cf3dbf0cd6c100f02945abeb18484bd1ee57a079aefd52cffd17fba910b88"}, 408 | {file = "MarkupSafe-2.1.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:6a074d34ee7a5ce3effbc526b7083ec9731bb3cbf921bbe1d3005d4d2bdb3a63"}, 409 | {file = "MarkupSafe-2.1.1-cp38-cp38-win32.whl", hash = "sha256:421be9fbf0ffe9ffd7a378aafebbf6f4602d564d34be190fc19a193232fd12b1"}, 410 | {file = "MarkupSafe-2.1.1-cp38-cp38-win_amd64.whl", hash = "sha256:fc7b548b17d238737688817ab67deebb30e8073c95749d55538ed473130ec0c7"}, 411 | {file = "MarkupSafe-2.1.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:e04e26803c9c3851c931eac40c695602c6295b8d432cbe78609649ad9bd2da8a"}, 412 | {file = "MarkupSafe-2.1.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:b87db4360013327109564f0e591bd2a3b318547bcef31b468a92ee504d07ae4f"}, 413 | {file = "MarkupSafe-2.1.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:99a2a507ed3ac881b975a2976d59f38c19386d128e7a9a18b7df6fff1fd4c1d6"}, 414 | {file = "MarkupSafe-2.1.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:56442863ed2b06d19c37f94d999035e15ee982988920e12a5b4ba29b62ad1f77"}, 415 | {file = "MarkupSafe-2.1.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3ce11ee3f23f79dbd06fb3d63e2f6af7b12db1d46932fe7bd8afa259a5996603"}, 416 | {file = "MarkupSafe-2.1.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:33b74d289bd2f5e527beadcaa3f401e0df0a89927c1559c8566c066fa4248ab7"}, 417 | {file = "MarkupSafe-2.1.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:43093fb83d8343aac0b1baa75516da6092f58f41200907ef92448ecab8825135"}, 418 | {file = "MarkupSafe-2.1.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8e3dcf21f367459434c18e71b2a9532d96547aef8a871872a5bd69a715c15f96"}, 419 | {file = "MarkupSafe-2.1.1-cp39-cp39-win32.whl", hash = "sha256:d4306c36ca495956b6d568d276ac11fdd9c30a36f1b6eb928070dc5360b22e1c"}, 420 | {file = "MarkupSafe-2.1.1-cp39-cp39-win_amd64.whl", hash = "sha256:46d00d6cfecdde84d40e572d63735ef81423ad31184100411e6e3388d405e247"}, 421 | {file = "MarkupSafe-2.1.1.tar.gz", hash = "sha256:7f91197cc9e48f989d12e4e6fbc46495c446636dfc81b9ccf50bb0ec74b91d4b"}, 422 | ] 423 | packaging = [ 424 | {file = "packaging-21.3-py3-none-any.whl", hash = "sha256:ef103e05f519cdc783ae24ea4e2e0f508a9c99b2d4969652eed6a2e1ea5bd522"}, 425 | {file = "packaging-21.3.tar.gz", hash = "sha256:dd47c42927d89ab911e606518907cc2d3a1f38bbd026385970643f9c5b8ecfeb"}, 426 | ] 427 | pygments = [ 428 | {file = "Pygments-2.12.0-py3-none-any.whl", hash = "sha256:dc9c10fb40944260f6ed4c688ece0cd2048414940f1cea51b8b226318411c519"}, 429 | {file = "Pygments-2.12.0.tar.gz", hash = "sha256:5eb116118f9612ff1ee89ac96437bb6b49e8f04d8a13b514ba26f620208e26eb"}, 430 | ] 431 | pyparsing = [ 432 | {file = "pyparsing-3.0.9-py3-none-any.whl", hash = "sha256:5026bae9a10eeaefb61dab2f09052b9f4307d44aee4eda64b309723d8d206bbc"}, 433 | {file = "pyparsing-3.0.9.tar.gz", hash = "sha256:2b020ecf7d21b687f219b71ecad3631f644a47f01403fa1d1036b0c6416d70fb"}, 434 | ] 435 | pytz = [ 436 | {file = "pytz-2022.1-py2.py3-none-any.whl", hash = "sha256:e68985985296d9a66a881eb3193b0906246245294a881e7c8afe623866ac6a5c"}, 437 | {file = "pytz-2022.1.tar.gz", hash = "sha256:1e760e2fe6a8163bc0b3d9a19c4f84342afa0a2affebfaa84b01b978a02ecaa7"}, 438 | ] 439 | requests = [ 440 | {file = "requests-2.27.1-py2.py3-none-any.whl", hash = "sha256:f22fa1e554c9ddfd16e6e41ac79759e17be9e492b3587efa038054674760e72d"}, 441 | {file = "requests-2.27.1.tar.gz", hash = "sha256:68d7c56fd5a8999887728ef304a6d12edc7be74f1cfa47714fc8b414525c9a61"}, 442 | ] 443 | scour = [ 444 | {file = "scour-0.38.2.tar.gz", hash = "sha256:6881ec26660c130c5ecd996ac6f6b03939dd574198f50773f2508b81a68e0daf"}, 445 | ] 446 | six = [ 447 | {file = "six-1.16.0-py2.py3-none-any.whl", hash = "sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254"}, 448 | {file = "six-1.16.0.tar.gz", hash = "sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926"}, 449 | ] 450 | snowballstemmer = [ 451 | {file = "snowballstemmer-2.2.0-py2.py3-none-any.whl", hash = "sha256:c8e1716e83cc398ae16824e5572ae04e0d9fc2c6b985fb0f900f5f0c96ecba1a"}, 452 | {file = "snowballstemmer-2.2.0.tar.gz", hash = "sha256:09b16deb8547d3412ad7b590689584cd0fe25ec8db3be37788be3810cbf19cb1"}, 453 | ] 454 | sphinx = [ 455 | {file = "Sphinx-4.5.0-py3-none-any.whl", hash = "sha256:ebf612653238bcc8f4359627a9b7ce44ede6fdd75d9d30f68255c7383d3a6226"}, 456 | {file = "Sphinx-4.5.0.tar.gz", hash = "sha256:7bf8ca9637a4ee15af412d1a1d9689fec70523a68ca9bb9127c2f3eeb344e2e6"}, 457 | ] 458 | sphinx-rtd-theme = [ 459 | {file = "sphinx_rtd_theme-1.0.0-py2.py3-none-any.whl", hash = "sha256:4d35a56f4508cfee4c4fb604373ede6feae2a306731d533f409ef5c3496fdbd8"}, 460 | {file = "sphinx_rtd_theme-1.0.0.tar.gz", hash = "sha256:eec6d497e4c2195fa0e8b2016b337532b8a699a68bcb22a512870e16925c6a5c"}, 461 | ] 462 | sphinxcontrib-applehelp = [ 463 | {file = "sphinxcontrib-applehelp-1.0.2.tar.gz", hash = "sha256:a072735ec80e7675e3f432fcae8610ecf509c5f1869d17e2eecff44389cdbc58"}, 464 | {file = "sphinxcontrib_applehelp-1.0.2-py2.py3-none-any.whl", hash = "sha256:806111e5e962be97c29ec4c1e7fe277bfd19e9652fb1a4392105b43e01af885a"}, 465 | ] 466 | sphinxcontrib-devhelp = [ 467 | {file = "sphinxcontrib-devhelp-1.0.2.tar.gz", hash = "sha256:ff7f1afa7b9642e7060379360a67e9c41e8f3121f2ce9164266f61b9f4b338e4"}, 468 | {file = "sphinxcontrib_devhelp-1.0.2-py2.py3-none-any.whl", hash = "sha256:8165223f9a335cc1af7ffe1ed31d2871f325254c0423bc0c4c7cd1c1e4734a2e"}, 469 | ] 470 | sphinxcontrib-htmlhelp = [ 471 | {file = "sphinxcontrib-htmlhelp-2.0.0.tar.gz", hash = "sha256:f5f8bb2d0d629f398bf47d0d69c07bc13b65f75a81ad9e2f71a63d4b7a2f6db2"}, 472 | {file = "sphinxcontrib_htmlhelp-2.0.0-py2.py3-none-any.whl", hash = "sha256:d412243dfb797ae3ec2b59eca0e52dac12e75a241bf0e4eb861e450d06c6ed07"}, 473 | ] 474 | sphinxcontrib-jsmath = [ 475 | {file = "sphinxcontrib-jsmath-1.0.1.tar.gz", hash = "sha256:a9925e4a4587247ed2191a22df5f6970656cb8ca2bd6284309578f2153e0c4b8"}, 476 | {file = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl", hash = "sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178"}, 477 | ] 478 | sphinxcontrib-qthelp = [ 479 | {file = "sphinxcontrib-qthelp-1.0.3.tar.gz", hash = "sha256:4c33767ee058b70dba89a6fc5c1892c0d57a54be67ddd3e7875a18d14cba5a72"}, 480 | {file = "sphinxcontrib_qthelp-1.0.3-py2.py3-none-any.whl", hash = "sha256:bd9fc24bcb748a8d51fd4ecaade681350aa63009a347a8c14e637895444dfab6"}, 481 | ] 482 | sphinxcontrib-serializinghtml = [ 483 | {file = "sphinxcontrib-serializinghtml-1.1.5.tar.gz", hash = "sha256:aa5f6de5dfdf809ef505c4895e51ef5c9eac17d0f287933eb49ec495280b6952"}, 484 | {file = "sphinxcontrib_serializinghtml-1.1.5-py2.py3-none-any.whl", hash = "sha256:352a9a00ae864471d3a7ead8d7d79f5fc0b57e8b3f95e9867eb9eb28999b92fd"}, 485 | ] 486 | urllib3 = [ 487 | {file = "urllib3-1.26.9-py2.py3-none-any.whl", hash = "sha256:44ece4d53fb1706f667c9bd1c648f5469a2ec925fcf3a776667042d645472c14"}, 488 | {file = "urllib3-1.26.9.tar.gz", hash = "sha256:aabaf16477806a5e1dd19aa41f8c2b7950dd3c746362d7e3223dbe6de6ac448e"}, 489 | ] 490 | zipp = [ 491 | {file = "zipp-3.8.0-py3-none-any.whl", hash = "sha256:c4f6e5bbf48e74f7a38e7cc5b0480ff42b0ae5178957d564d18932525d5cf099"}, 492 | {file = "zipp-3.8.0.tar.gz", hash = "sha256:56bf8aadb83c24db6c4b577e13de374ccfb67da2078beba1d037c17980bf43ad"}, 493 | ] 494 | -------------------------------------------------------------------------------- /pyproject.toml: -------------------------------------------------------------------------------- 1 | [tool.poetry] 2 | name = "guidelines" 3 | version = "0.1.0" 4 | description = "" 5 | authors = ["Read the Docs, Inc"] 6 | license = "MIT" 7 | 8 | [tool.poetry.dependencies] 9 | python = "^3.8" 10 | scour = "^0.38.2" 11 | Sphinx = "^4.5.0" 12 | sphinx-rtd-theme = "^1.0.0" 13 | 14 | [tool.poetry.dev-dependencies] 15 | 16 | [build-system] 17 | requires = ["poetry-core>=1.0.0"] 18 | build-backend = "poetry.core.masonry.api" 19 | -------------------------------------------------------------------------------- /src/assets/logo-dark.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 15 | 17 | 19 | 20 | 22 | image/svg+xml 23 | 25 | 26 | 27 | 28 | 29 | 32 | 36 | 40 | 41 | 42 | 43 | -------------------------------------------------------------------------------- /src/assets/logo-light.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 15 | 17 | 19 | 20 | 22 | image/svg+xml 23 | 25 | 26 | 27 | 28 | 29 | 32 | 36 | 40 | 41 | 42 | 43 | -------------------------------------------------------------------------------- /src/assets/logo-opengraph.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 15 | 20 | 22 | 25 | 29 | 30 | 32 | 36 | 40 | 44 | 48 | 52 | 56 | 60 | 64 | 68 | 72 | 76 | 77 | 78 | 79 | -------------------------------------------------------------------------------- /src/assets/logo-wordmark-dark.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 14 | 16 | 18 | 19 | 21 | image/svg+xml 22 | 24 | 25 | 26 | 27 | 28 | 31 | 35 | 39 | 43 | 47 | 51 | 52 | 55 | 59 | 63 | 67 | 71 | 75 | 79 | 83 | 87 | 91 | 95 | 99 | 100 | 101 | 102 | 103 | 104 | -------------------------------------------------------------------------------- /src/assets/logo-wordmark-light.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 14 | 16 | 18 | 19 | 21 | image/svg+xml 22 | 24 | 25 | 26 | 27 | 28 | 31 | 35 | 39 | 43 | 47 | 51 | 52 | 55 | 59 | 63 | 67 | 71 | 75 | 79 | 83 | 87 | 91 | 95 | 99 | 100 | 101 | 102 | 103 | 104 | -------------------------------------------------------------------------------- /src/assets/logo-wordmark-vertical-compact-dark.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 16 | 21 | 24 | 27 | 31 | 32 | 35 | 36 | 37 | 38 | 52 | 53 | 54 | 66 | 67 | 68 | 69 | 84 | 85 | 86 | 87 | -------------------------------------------------------------------------------- /src/assets/logo-wordmark-vertical-compact-light.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 16 | 21 | 24 | 27 | 31 | 32 | 35 | 36 | 37 | 38 | 52 | 53 | 54 | 66 | 67 | 68 | 69 | 84 | 85 | 86 | 87 | -------------------------------------------------------------------------------- /src/assets/logo-wordmark-vertical-dark.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 15 | 20 | 22 | 25 | 29 | 30 | 32 | 36 | 40 | 44 | 48 | 52 | 56 | 60 | 64 | 68 | 72 | 76 | 77 | 78 | 79 | -------------------------------------------------------------------------------- /src/assets/logo-wordmark-vertical-light.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 15 | 20 | 22 | 25 | 29 | 30 | 32 | 36 | 40 | 44 | 48 | 52 | 56 | 60 | 64 | 68 | 72 | 76 | 77 | 78 | 79 | --------------------------------------------------------------------------------