celshast 0.0.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- celshast-0.0.1/CODE_OF_CONDUCT.md +61 -0
- celshast-0.0.1/CONTRIBUTING.md +57 -0
- celshast-0.0.1/Justfile +11 -0
- celshast-0.0.1/LICENSE +19 -0
- celshast-0.0.1/PKG-INFO +518 -0
- celshast-0.0.1/README.md +488 -0
- celshast-0.0.1/docs/_static/demo-dark.png +0 -0
- celshast-0.0.1/docs/_static/demo-light.png +0 -0
- celshast-0.0.1/docs/_static/demo.png +0 -0
- celshast-0.0.1/docs/_static/gymnasium-text.png +0 -0
- celshast-0.0.1/docs/_static/pied-piper-admonition.css +15 -0
- celshast-0.0.1/docs/_static/readthedocs-dummy.js +9 -0
- celshast-0.0.1/docs/changelog.md +566 -0
- celshast-0.0.1/docs/conf.py +151 -0
- celshast-0.0.1/docs/contributing/design.md +23 -0
- celshast-0.0.1/docs/contributing/index.md +26 -0
- celshast-0.0.1/docs/contributing/internals.md +71 -0
- celshast-0.0.1/docs/contributing/workflow.md +123 -0
- celshast-0.0.1/docs/customisation/announcement.md +15 -0
- celshast-0.0.1/docs/customisation/colors.md +48 -0
- celshast-0.0.1/docs/customisation/edit-button.md +47 -0
- celshast-0.0.1/docs/customisation/fonts.md +18 -0
- celshast-0.0.1/docs/customisation/footer.md +102 -0
- celshast-0.0.1/docs/customisation/index.md +109 -0
- celshast-0.0.1/docs/customisation/injecting.md +30 -0
- celshast-0.0.1/docs/customisation/landing-page.md +18 -0
- celshast-0.0.1/docs/customisation/logo.md +39 -0
- celshast-0.0.1/docs/customisation/sidebar-title.md +17 -0
- celshast-0.0.1/docs/customisation/sidebar.md +89 -0
- celshast-0.0.1/docs/customisation/toc.md +25 -0
- celshast-0.0.1/docs/index.md +38 -0
- celshast-0.0.1/docs/kitchen-sink/admonitions.rst +102 -0
- celshast-0.0.1/docs/kitchen-sink/api.rst +37 -0
- celshast-0.0.1/docs/kitchen-sink/blocks.rst +282 -0
- celshast-0.0.1/docs/kitchen-sink/generic.rst +275 -0
- celshast-0.0.1/docs/kitchen-sink/images.rst +89 -0
- celshast-0.0.1/docs/kitchen-sink/index.md +20 -0
- celshast-0.0.1/docs/kitchen-sink/lists.rst +276 -0
- celshast-0.0.1/docs/kitchen-sink/really-long.md +209 -0
- celshast-0.0.1/docs/kitchen-sink/sphinx-design.md +172 -0
- celshast-0.0.1/docs/kitchen-sink/structure.rst +104 -0
- celshast-0.0.1/docs/kitchen-sink/tables.rst +111 -0
- celshast-0.0.1/docs/kitchen-sink/typography.rst +66 -0
- celshast-0.0.1/docs/license.rst +7 -0
- celshast-0.0.1/docs/quickstart.md +6 -0
- celshast-0.0.1/docs/recommendations.md +38 -0
- celshast-0.0.1/docs/reference/admonitions.md +226 -0
- celshast-0.0.1/docs/reference/api.md +32 -0
- celshast-0.0.1/docs/reference/code-blocks.md +52 -0
- celshast-0.0.1/docs/reference/hyperlinks.md +27 -0
- celshast-0.0.1/docs/reference/images.md +115 -0
- celshast-0.0.1/docs/reference/index.md +22 -0
- celshast-0.0.1/docs/reference/lists.md +63 -0
- celshast-0.0.1/docs/reference/tables.md +61 -0
- celshast-0.0.1/docs/reference/tabs.md +64 -0
- celshast-0.0.1/docs/reference/text-formatting.md +37 -0
- celshast-0.0.1/docs/requirements.txt +5 -0
- celshast-0.0.1/docs/stability.md +37 -0
- celshast-0.0.1/mise.toml +5 -0
- celshast-0.0.1/noxfile.py +158 -0
- celshast-0.0.1/package-lock.json +3291 -0
- celshast-0.0.1/package.json +18 -0
- celshast-0.0.1/postcss.config.js +3 -0
- celshast-0.0.1/pyproject.toml +72 -0
- celshast-0.0.1/src/celshast/__init__.py +377 -0
- celshast-0.0.1/src/celshast/_demo_module.py +54 -0
- celshast-0.0.1/src/celshast/assets/scripts/celshast.js +175 -0
- celshast-0.0.1/src/celshast/assets/scripts/gumshoe-patched.js +466 -0
- celshast-0.0.1/src/celshast/assets/styles/_scaffold.sass +460 -0
- celshast-0.0.1/src/celshast/assets/styles/_shame.sass +12 -0
- celshast-0.0.1/src/celshast/assets/styles/base/_index.sass +4 -0
- celshast-0.0.1/src/celshast/assets/styles/base/_print.sass +43 -0
- celshast-0.0.1/src/celshast/assets/styles/base/_screen-readers.sass +13 -0
- celshast-0.0.1/src/celshast/assets/styles/base/_theme.sass +55 -0
- celshast-0.0.1/src/celshast/assets/styles/base/_typography.sass +93 -0
- celshast-0.0.1/src/celshast/assets/styles/celshast-extensions.sass +1 -0
- celshast-0.0.1/src/celshast/assets/styles/celshast.sass +9 -0
- celshast-0.0.1/src/celshast/assets/styles/components/_footer.sass +109 -0
- celshast-0.0.1/src/celshast/assets/styles/components/_index.sass +4 -0
- celshast-0.0.1/src/celshast/assets/styles/components/_search.sass +17 -0
- celshast-0.0.1/src/celshast/assets/styles/components/_sidebar.sass +231 -0
- celshast-0.0.1/src/celshast/assets/styles/components/_table_of_contents.sass +65 -0
- celshast-0.0.1/src/celshast/assets/styles/content/_admonitions.sass +77 -0
- celshast-0.0.1/src/celshast/assets/styles/content/_api.sass +96 -0
- celshast-0.0.1/src/celshast/assets/styles/content/_blocks.sass +7 -0
- celshast-0.0.1/src/celshast/assets/styles/content/_captions.sass +19 -0
- celshast-0.0.1/src/celshast/assets/styles/content/_code.sass +137 -0
- celshast-0.0.1/src/celshast/assets/styles/content/_footnotes.sass +45 -0
- celshast-0.0.1/src/celshast/assets/styles/content/_gui-labels.sass +8 -0
- celshast-0.0.1/src/celshast/assets/styles/content/_images.sass +37 -0
- celshast-0.0.1/src/celshast/assets/styles/content/_index.sass +16 -0
- celshast-0.0.1/src/celshast/assets/styles/content/_indexes.sass +12 -0
- celshast-0.0.1/src/celshast/assets/styles/content/_lists.sass +67 -0
- celshast-0.0.1/src/celshast/assets/styles/content/_math.sass +21 -0
- celshast-0.0.1/src/celshast/assets/styles/content/_misc.sass +53 -0
- celshast-0.0.1/src/celshast/assets/styles/content/_rubrics.sass +13 -0
- celshast-0.0.1/src/celshast/assets/styles/content/_sidebar.sass +28 -0
- celshast-0.0.1/src/celshast/assets/styles/content/_tables.sass +42 -0
- celshast-0.0.1/src/celshast/assets/styles/content/_target.sass +81 -0
- celshast-0.0.1/src/celshast/assets/styles/extensions/_copybutton.sass +45 -0
- celshast-0.0.1/src/celshast/assets/styles/extensions/_farama.sass +714 -0
- celshast-0.0.1/src/celshast/assets/styles/extensions/_index.sass +6 -0
- celshast-0.0.1/src/celshast/assets/styles/extensions/_readthedocs.sass +76 -0
- celshast-0.0.1/src/celshast/assets/styles/extensions/_sphinx-design.sass +51 -0
- celshast-0.0.1/src/celshast/assets/styles/extensions/_sphinx-inline-tabs.sass +18 -0
- celshast-0.0.1/src/celshast/assets/styles/extensions/_sphinx-panels.sass +18 -0
- celshast-0.0.1/src/celshast/assets/styles/variables/_admonitions.scss +48 -0
- celshast-0.0.1/src/celshast/assets/styles/variables/_colors.scss +192 -0
- celshast-0.0.1/src/celshast/assets/styles/variables/_fonts.scss +41 -0
- celshast-0.0.1/src/celshast/assets/styles/variables/_icons.scss +32 -0
- celshast-0.0.1/src/celshast/assets/styles/variables/_index.sass +8 -0
- celshast-0.0.1/src/celshast/assets/styles/variables/_layout.scss +9 -0
- celshast-0.0.1/src/celshast/assets/styles/variables/_spacing.scss +43 -0
- celshast-0.0.1/src/celshast/farama_directives.py +42 -0
- celshast-0.0.1/src/celshast/gen_tutorials.py +64 -0
- celshast-0.0.1/src/celshast/navigation.py +87 -0
- celshast-0.0.1/src/celshast/sphinxext.py +95 -0
- celshast-0.0.1/src/celshast/theme/celshast/base.html +483 -0
- celshast-0.0.1/src/celshast/theme/celshast/components/edit-this-page.html +26 -0
- celshast-0.0.1/src/celshast/theme/celshast/domainindex.html +51 -0
- celshast-0.0.1/src/celshast/theme/celshast/genindex.html +58 -0
- celshast-0.0.1/src/celshast/theme/celshast/globaltoc.html +4 -0
- celshast-0.0.1/src/celshast/theme/celshast/layout.html +16 -0
- celshast-0.0.1/src/celshast/theme/celshast/localtoc.html +4 -0
- celshast-0.0.1/src/celshast/theme/celshast/page.html +262 -0
- celshast-0.0.1/src/celshast/theme/celshast/partials/_head_css_variables.html +28 -0
- celshast-0.0.1/src/celshast/theme/celshast/partials/icons.html +61 -0
- celshast-0.0.1/src/celshast/theme/celshast/search.html +29 -0
- celshast-0.0.1/src/celshast/theme/celshast/sidebar/brand.html +31 -0
- celshast-0.0.1/src/celshast/theme/celshast/sidebar/donate.html +7 -0
- celshast-0.0.1/src/celshast/theme/celshast/sidebar/ethical-ads.html +10 -0
- celshast-0.0.1/src/celshast/theme/celshast/sidebar/navigation.html +3 -0
- celshast-0.0.1/src/celshast/theme/celshast/sidebar/rtd-versions.html +34 -0
- celshast-0.0.1/src/celshast/theme/celshast/sidebar/scroll-end.html +1 -0
- celshast-0.0.1/src/celshast/theme/celshast/sidebar/scroll-start.html +1 -0
- celshast-0.0.1/src/celshast/theme/celshast/sidebar/search.html +6 -0
- celshast-0.0.1/src/celshast/theme/celshast/sidebar/title.html +7 -0
- celshast-0.0.1/src/celshast/theme/celshast/sidebar/variant-selector.html +33 -0
- celshast-0.0.1/src/celshast/theme/celshast/static/.gitignore +7 -0
- celshast-0.0.1/src/celshast/theme/celshast/static/img/MAgent2-white.svg +131 -0
- celshast-0.0.1/src/celshast/theme/celshast/static/img/autorom-white.svg +112 -0
- celshast-0.0.1/src/celshast/theme/celshast/static/img/d4rl-white.svg +107 -0
- celshast-0.0.1/src/celshast/theme/celshast/static/img/farama-logo-header.svg +115 -0
- celshast-0.0.1/src/celshast/theme/celshast/static/img/farama_solid_white.svg +95 -0
- celshast-0.0.1/src/celshast/theme/celshast/static/img/gymnasium-white.svg +89 -0
- celshast-0.0.1/src/celshast/theme/celshast/static/img/gymrobotics-white.svg +165 -0
- celshast-0.0.1/src/celshast/theme/celshast/static/img/jumpy-white.svg +156 -0
- celshast-0.0.1/src/celshast/theme/celshast/static/img/kabuki-white.svg +160 -0
- celshast-0.0.1/src/celshast/theme/celshast/static/img/microrts-white.svg +179 -0
- celshast-0.0.1/src/celshast/theme/celshast/static/img/minigrid-white.svg +136 -0
- celshast-0.0.1/src/celshast/theme/celshast/static/img/miniworld-white.svg +184 -0
- celshast-0.0.1/src/celshast/theme/celshast/static/img/pettingzoo-white.svg +169 -0
- celshast-0.0.1/src/celshast/theme/celshast/static/img/procgen2-white.svg +151 -0
- celshast-0.0.1/src/celshast/theme/celshast/static/img/supersuit-white.svg +80 -0
- celshast-0.0.1/src/celshast/theme/celshast/static/img/tinyscaler-white.svg +123 -0
- celshast-0.0.1/src/celshast/theme/celshast/static/versioning/versioning_menu.html +222 -0
- celshast-0.0.1/src/celshast/theme/celshast/theme.conf +35 -0
- celshast-0.0.1/starter_kit/.gitignore +21 -0
- celshast-0.0.1/starter_kit/404.md +7 -0
- celshast-0.0.1/starter_kit/Makefile +20 -0
- celshast-0.0.1/starter_kit/README.md +5 -0
- celshast-0.0.1/starter_kit/_scripts/ipynb_to_gallery.py +63 -0
- celshast-0.0.1/starter_kit/_scripts/move_404.py +14 -0
- celshast-0.0.1/starter_kit/_static/img/PROJECT-github.png +0 -0
- celshast-0.0.1/starter_kit/_static/img/PROJECT_black.svg +80 -0
- celshast-0.0.1/starter_kit/_static/img/PROJECT_white.svg +81 -0
- celshast-0.0.1/starter_kit/_static/img/favicon.png +0 -0
- celshast-0.0.1/starter_kit/conf.py +92 -0
- celshast-0.0.1/starter_kit/content/basic_usage.md +13 -0
- celshast-0.0.1/starter_kit/index.md +50 -0
- celshast-0.0.1/starter_kit/make.bat +35 -0
- celshast-0.0.1/starter_kit/requirements.txt +5 -0
- celshast-0.0.1/webpack.config.js +33 -0
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
# Farama Foundation Code of Conduct
|
|
2
|
+
|
|
3
|
+
The Farama Foundation is dedicated to providing a harassment-free experience for
|
|
4
|
+
everyone, regardless of gender, gender identity and expression, sexual
|
|
5
|
+
orientation, disability, physical appearance, body size, age, race, or
|
|
6
|
+
religion. We do not tolerate harassment of participants in any form.
|
|
7
|
+
|
|
8
|
+
This code of conduct applies to all Farama Foundation repositories (including Gist
|
|
9
|
+
comments) both online and off. Anyone who violates this code of
|
|
10
|
+
conduct may be sanctioned or expelled from these spaces at the
|
|
11
|
+
discretion of the moderators.
|
|
12
|
+
|
|
13
|
+
We may add additional rules over time, which will be made clearly
|
|
14
|
+
available to participants. Participants are responsible for knowing
|
|
15
|
+
and abiding by these rules.
|
|
16
|
+
|
|
17
|
+
## Our Standards
|
|
18
|
+
|
|
19
|
+
Members of the Farama Foundation community are **open**, **inclusive**, and **respectful**.
|
|
20
|
+
Examples of behavior that contributes to a positive environment for our community include:
|
|
21
|
+
|
|
22
|
+
- **Being open**. Members of the community are open to collaboration, whether it's on issues, PRs, problems, or otherwise
|
|
23
|
+
- **Focusing on what is best for the community**. We're respectful of the processes set forth in the community, and we work within them to
|
|
24
|
+
improve the community.
|
|
25
|
+
- **Being respectful of differing viewpoints and experiences.** We're receptive to constructive comments and criticism,
|
|
26
|
+
as the experiences and skill sets of other members contribute to the whole of our efforts.
|
|
27
|
+
- **Showing empathy.** We're attentive in our communications, and we're tactful when approaching differing views.
|
|
28
|
+
- **Being respectful.** We're respectful of differing opinions, viewpoints, experiences, and efforts.
|
|
29
|
+
- **Gracefully accepting constructive criticism.** When we disagree, we are courteous in raising our issues.
|
|
30
|
+
- **Using welcoming and inclusive language.** We're accepting of all who wish to take part in our activities, fostering
|
|
31
|
+
an environment where anyone can participate and everyone can make a difference.
|
|
32
|
+
|
|
33
|
+
Examples of unacceptable behavior include:
|
|
34
|
+
|
|
35
|
+
- Harassment of any participants in any form.
|
|
36
|
+
- The use of sexual language or imagery, and sexual attention or advances of any kind.
|
|
37
|
+
- Insults, put downs, or jokes that are based upon stereotypes, that are exclusionary, or that hold others up for ridicule.
|
|
38
|
+
- Publishing others' private information, such as a physical or email address, without explicit permission.
|
|
39
|
+
- Incitement of violence or harassment towards any individual, including encouraging a person to commit suicide or to engage in self-harm.
|
|
40
|
+
- Sustained disruption of online community discussions, in-person presentations, or other in-person events.
|
|
41
|
+
- Creating additional online accounts in order to harass another person or circumvent a ban
|
|
42
|
+
- Other conduct which could reasonably be considered inappropriate in a professional setting including people of many different backgrounds.
|
|
43
|
+
|
|
44
|
+
Members asked to stop any inappropriate behavior are expected to comply immediately.
|
|
45
|
+
|
|
46
|
+
## Consequences
|
|
47
|
+
|
|
48
|
+
If a participant engages in behavior that violates this code of conduct, the Farama Foundation team may take any action they deem
|
|
49
|
+
appropriate, including warning the offender or expulsion from the community.
|
|
50
|
+
|
|
51
|
+
Thank you for helping make this a welcoming, friendly community for everyone.
|
|
52
|
+
|
|
53
|
+
## License
|
|
54
|
+
|
|
55
|
+
This Code of Conduct is licensed under the `Creative Commons Attribution-ShareAlike 3.0 Unported License
|
|
56
|
+
<https://creativecommons.org/licenses/by-sa/3.0/>`\_.
|
|
57
|
+
|
|
58
|
+
## Attribution
|
|
59
|
+
|
|
60
|
+
This Code of Conduct is adapted from `Python's Code of Conduct <https://www.python.org/psf/conduct/>`_, which is under a `Creative Commons License
|
|
61
|
+
<https://creativecommons.org/licenses/by-sa/3.0/>`_.
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
# Contribute to Farama projects documentation
|
|
2
|
+
|
|
3
|
+
Thank you for considering contributing to our documentation! A good
|
|
4
|
+
documentation is vital for any project and empowers those that use it.
|
|
5
|
+
|
|
6
|
+
Our documentation is written in [MyST (Markedly Structured Text)](https://myst-parser.readthedocs.io/en/latest/) and built using [Sphinx](https://www.sphinx-doc.org/en/master/).
|
|
7
|
+
|
|
8
|
+
Here are some important information about how to contribute to our documentation:
|
|
9
|
+
|
|
10
|
+
- [Build Documentation](./README.md#build-documentation)
|
|
11
|
+
- [Write Documentation](#write-documentation)
|
|
12
|
+
- [Write Environments Documentation](#write-environments-documentation)
|
|
13
|
+
- [Write Tutorials](#write-tutorials)
|
|
14
|
+
- [Sphinx Theme options](./README.md#theme-options)
|
|
15
|
+
- [Frontmatter options](./README.md#frontmatter)
|
|
16
|
+
- [Create Documentation Website](#create-a-documentation-website)
|
|
17
|
+
|
|
18
|
+
## Write Documentation
|
|
19
|
+
|
|
20
|
+
Here are some guidelines to follow when writing documentation:
|
|
21
|
+
|
|
22
|
+
1. Use **clear** and **concise** language. Avoid jargon and technical terms when possible.
|
|
23
|
+
2. Use **Google-style** Python docstrings.
|
|
24
|
+
3. Use the reStructuredText markup language inside docstrings.
|
|
25
|
+
4. Use [`autodoc`](https://www.sphinx-doc.org/en/master/usage/extensions/autodoc.html) to automatically generate documentation from your code.
|
|
26
|
+
5. Use the MyST markdown (using the .md file extension) for documentation files inside the `docs/` directory.
|
|
27
|
+
6. Use scripts to generate environments documentation.
|
|
28
|
+
7. Use [`sphinx-gallery`](https://sphinx-gallery.github.io/stable/index.html) to include tutorials in your documentation.
|
|
29
|
+
|
|
30
|
+
## Write Environments Documentation
|
|
31
|
+
|
|
32
|
+
Environment documentation varies from project to project and sometimes from environment type.
|
|
33
|
+
|
|
34
|
+
Some environments, for example, Atari, require you to directly edit the Markdown file, however those are rare situations that should be **avoided**.
|
|
35
|
+
|
|
36
|
+
For most cases environments should be documented using a docstring inside the entry point class, [example](https://github.com/Farama-Foundation/Gymnasium/blob/5bb67ee69d8fc21fafe4147fdcafa1e1daf158c4/gymnasium/envs/box2d/bipedal_walker.py#L104). To automatically generate the documentation pages, i.e. `.md` files, you should use a python script, for example, [docs/scripts/gen_mds.py](https://github.com/Farama-Foundation/Gymnasium-Robotics/blob/main/docs/scripts/gen_mds.py).
|
|
37
|
+
|
|
38
|
+
## Write Tutorials
|
|
39
|
+
|
|
40
|
+
We use Sphinx-Gallery to build the tutorials inside the docs/tutorials directory.
|
|
41
|
+
|
|
42
|
+
To convert Jupyter Notebooks to Python tutorials you can use [this script](./starter_kit/_scripts/ipynb_to_gallery.py).
|
|
43
|
+
To convert cells outputting static images, like `<img src="../_static/img/tutorials/my_image.png" alt="My image description">`, they need to be in single Mardown cell and have an `alt` text.
|
|
44
|
+
|
|
45
|
+
If you want Sphinx-Gallery to execute the tutorial (which adds outputs and plots) then the file name should start with run\_. Note that this adds to the build time so make sure the script doesn't take more than a few seconds to execute.
|
|
46
|
+
|
|
47
|
+
Go to [Sphinx-Gallery documentation](https://sphinx-gallery.github.io/stable/syntax.html) for more information.
|
|
48
|
+
|
|
49
|
+
## Create a Documentation website
|
|
50
|
+
|
|
51
|
+
- Create a directory named `docs` in the root directory of the project's repository
|
|
52
|
+
- **Copy** the contents inside the [start_kit](./starter_kit/) directory (you can use [donwload-directory.github.io](https://download-directory.github.io/?url=https%3A%2F%2Fgithub.com%2FFarama-Foundation%2FCelshast%2Ftree%2Fmain%2Fstarter_kit))
|
|
53
|
+
- **Paste** them inside the new `docs` directory
|
|
54
|
+
- Replace `<PROJECT>` and `<PROJECT_LOW>` with the name of the project, e.g. Gymnasiun would replace `<PROJECT>` with `Gymnasium` and `<PROJECT_LOW>` with `gymnasium`. You will find these placeholders inside files and in file names without the angle brackets.
|
|
55
|
+
- Replace the images and svg files inside `_static/img` with the ones corresponding to the project.
|
|
56
|
+
- Add content to the documentation.
|
|
57
|
+
- Add GitHub Actions workflows to build the website. Go [here](./README.md#workflow-to-build-docs) for more information.
|
celshast-0.0.1/Justfile
ADDED
celshast-0.0.1/LICENSE
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
Copyright (c) 2020 Pradyun Gedam <mail@pradyunsg.me> & Copyright (c) 2023 Farama Foundation
|
|
2
|
+
|
|
3
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
4
|
+
of this software and associated documentation files (the "Software"), to
|
|
5
|
+
deal in the Software without restriction, including without limitation the
|
|
6
|
+
rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
|
7
|
+
sell copies of the Software, and to permit persons to whom the Software is
|
|
8
|
+
furnished to do so, subject to the following conditions:
|
|
9
|
+
|
|
10
|
+
The above copyright notice and this permission notice shall be included in
|
|
11
|
+
all copies or substantial portions of the Software.
|
|
12
|
+
|
|
13
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
14
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
15
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE
|
|
16
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
17
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
18
|
+
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
|
19
|
+
IN THE SOFTWARE.
|
celshast-0.0.1/PKG-INFO
ADDED
|
@@ -0,0 +1,518 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: celshast
|
|
3
|
+
Version: 0.0.1
|
|
4
|
+
Summary: A Farama Foundation Sphinx documentation theme based on Furo.
|
|
5
|
+
Author-Email: Farama Foundation <contact@farama.org>, Pradyun Gedam <mail@pradyunsg.me>
|
|
6
|
+
License-File: LICENSE
|
|
7
|
+
Classifier: Framework :: Sphinx
|
|
8
|
+
Classifier: Framework :: Sphinx :: Theme
|
|
9
|
+
Classifier: Development Status :: 5 - Production/Stable
|
|
10
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
11
|
+
Classifier: Environment :: Web Environment
|
|
12
|
+
Classifier: Intended Audience :: Developers
|
|
13
|
+
Classifier: Programming Language :: Python :: 3
|
|
14
|
+
Classifier: Programming Language :: Python :: 3.8
|
|
15
|
+
Classifier: Programming Language :: Python :: 3.9
|
|
16
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
17
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
18
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
19
|
+
Classifier: Operating System :: OS Independent
|
|
20
|
+
Classifier: Topic :: Documentation
|
|
21
|
+
Classifier: Topic :: Software Development :: Documentation
|
|
22
|
+
Project-URL: GitHub, https://github.com/Farama-Foundation/Celshast
|
|
23
|
+
Requires-Python: >=3.8
|
|
24
|
+
Requires-Dist: beautifulsoup4
|
|
25
|
+
Requires-Dist: sphinx<8.0,>=6.0
|
|
26
|
+
Requires-Dist: sphinx-basic-ng
|
|
27
|
+
Requires-Dist: pygments>=2.7
|
|
28
|
+
Requires-Dist: matplotlib
|
|
29
|
+
Description-Content-Type: text/markdown
|
|
30
|
+
|
|
31
|
+
# Celshast
|
|
32
|
+
|
|
33
|
+
A [Farama Foundation](https://farama.org/) <a href="https://www.sphinx-doc.org/">Sphinx</a> documentation theme based on the [Furo template](https://github.com/pradyunsg/furo).
|
|
34
|
+
|
|
35
|
+
To learn how to contribute to our projects' documentation go to [CONTRIBUTING.md](CONTRIBUTING.md)
|
|
36
|
+
|
|
37
|
+
## Install Celshast
|
|
38
|
+
|
|
39
|
+
```
|
|
40
|
+
pip install celshast
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
Or, for development:
|
|
44
|
+
|
|
45
|
+
```
|
|
46
|
+
git clone https://github.com/Farama-Foundation/Celshast.git
|
|
47
|
+
cd Celshast
|
|
48
|
+
pip install -e .
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
**Add to documentation (conf.py)**
|
|
52
|
+
|
|
53
|
+
```
|
|
54
|
+
html_theme = "celshast"
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
## Build Documentation
|
|
58
|
+
|
|
59
|
+
To build and serve the documentation website you should go to the `docs/` directory and choose one of the following options.
|
|
60
|
+
|
|
61
|
+
**Option 1: Build once**
|
|
62
|
+
|
|
63
|
+
Build:
|
|
64
|
+
|
|
65
|
+
```
|
|
66
|
+
make dirhtml
|
|
67
|
+
OR
|
|
68
|
+
sphinx-build -b dirhtml . _build
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
Serve the generated website using python (you can choose other http servers):
|
|
72
|
+
|
|
73
|
+
```
|
|
74
|
+
python -m http.server 8001 --directory _build
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
**Option 2: Automatically build when a change is made**
|
|
78
|
+
|
|
79
|
+
Install `sphinx-autobuild`
|
|
80
|
+
|
|
81
|
+
```
|
|
82
|
+
pip install sphinx-autobuild
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
Build and serve using:
|
|
86
|
+
|
|
87
|
+
```
|
|
88
|
+
sphinx-autobuild -b dirhtml . _build
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
### Workflow to Build Docs
|
|
92
|
+
|
|
93
|
+
Our docs are hosted using GitHub Pages (using gh-pages branch) and we use a GitHub Actions workflow to build the website every time a change is made to the repository.
|
|
94
|
+
|
|
95
|
+
The following code block shows an example of a `yaml` file usually named `.github/workflows/build-docs.yml` that defines the workflow.
|
|
96
|
+
|
|
97
|
+
```yaml
|
|
98
|
+
name: Deploy Docs
|
|
99
|
+
on:
|
|
100
|
+
push:
|
|
101
|
+
branches: [master]
|
|
102
|
+
|
|
103
|
+
permissions:
|
|
104
|
+
contents: write
|
|
105
|
+
|
|
106
|
+
jobs:
|
|
107
|
+
docs:
|
|
108
|
+
name: Generate Website
|
|
109
|
+
runs-on: ubuntu-latest
|
|
110
|
+
|
|
111
|
+
steps:
|
|
112
|
+
- uses: actions/checkout@v3
|
|
113
|
+
- uses: actions/setup-python@v4
|
|
114
|
+
with:
|
|
115
|
+
python-version: "3.9"
|
|
116
|
+
|
|
117
|
+
- name: Install docs dependencies
|
|
118
|
+
run: pip install -r docs/requirements.txt
|
|
119
|
+
|
|
120
|
+
- name: Install <Project>
|
|
121
|
+
run: pip install -e .
|
|
122
|
+
|
|
123
|
+
- name: Run some auxiliary scripts, e.g. build environments docs
|
|
124
|
+
run: python docs/_scripts/gen_envs_mds.py
|
|
125
|
+
|
|
126
|
+
- name: Build
|
|
127
|
+
run: sphinx-build -b dirhtml -v docs _build
|
|
128
|
+
|
|
129
|
+
- name: Move 404
|
|
130
|
+
run: mv _build/404/index.html _build/404.html
|
|
131
|
+
|
|
132
|
+
- name: Update 404 links
|
|
133
|
+
run: python docs/_scripts/move_404.py _build/404.html
|
|
134
|
+
|
|
135
|
+
- name: Remove .doctrees
|
|
136
|
+
run: rm -r _build/.doctrees
|
|
137
|
+
|
|
138
|
+
- name: Upload to GitHub Pages
|
|
139
|
+
uses: JamesIves/github-pages-deploy-action@v4
|
|
140
|
+
with:
|
|
141
|
+
folder: _build
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
### Workflow to Build Docs with Versioning
|
|
145
|
+
|
|
146
|
+
Celshast supports documentation versioning using an HTML menu and GitHub Actions. Every page has a JS script that injects an `html` document with the [versions menu](https://github.com/Farama-Foundation/Celshast/blob/main/src/celshast/theme/celshast/static/versioning/versioning_menu.html), which allows updating older versions without rebuilding.
|
|
147
|
+
|
|
148
|
+
To enable the menu set the theme option to true in the `conf.py` file:
|
|
149
|
+
|
|
150
|
+
```python
|
|
151
|
+
html_theme_options = {
|
|
152
|
+
"versioning": True,
|
|
153
|
+
}
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
With versioning enabled you should have three different GitHub Actions workflows (the names are just an example):
|
|
157
|
+
|
|
158
|
+
- `build-docs-dev.yml` - Build the docs based on the latest commit in the `main` branch, which is an unstable version. The build will be published in the folder `main` at the `gh-pages` branch.
|
|
159
|
+
|
|
160
|
+
```yaml
|
|
161
|
+
name: Build main branch documentation website
|
|
162
|
+
on:
|
|
163
|
+
push:
|
|
164
|
+
branches: [main]
|
|
165
|
+
permissions:
|
|
166
|
+
contents: write
|
|
167
|
+
jobs:
|
|
168
|
+
docs:
|
|
169
|
+
name: Generate Website
|
|
170
|
+
runs-on: ubuntu-latest
|
|
171
|
+
|
|
172
|
+
steps:
|
|
173
|
+
- uses: actions/checkout@v3
|
|
174
|
+
|
|
175
|
+
- uses: actions/setup-python@v4
|
|
176
|
+
with:
|
|
177
|
+
python-version: "3.9"
|
|
178
|
+
|
|
179
|
+
- name: Install dependencies
|
|
180
|
+
run: pip install -r docs/requirements.txt
|
|
181
|
+
|
|
182
|
+
- name: Install Gymnasium
|
|
183
|
+
run: pip install mujoco && pip install .[atari,accept-rom-license,box2d]
|
|
184
|
+
|
|
185
|
+
- name: Build Envs Docs
|
|
186
|
+
run: python docs/scripts/gen_mds.py && python docs/scripts/gen_envs_display.py
|
|
187
|
+
|
|
188
|
+
- name: Build
|
|
189
|
+
run: sphinx-build -b dirhtml -v docs _build
|
|
190
|
+
|
|
191
|
+
- name: Move 404
|
|
192
|
+
run: mv _build/404/index.html _build/404.html
|
|
193
|
+
|
|
194
|
+
- name: Update 404 links
|
|
195
|
+
run: python docs/_scripts/move_404.py _build/404.html
|
|
196
|
+
|
|
197
|
+
- name: Remove .doctrees
|
|
198
|
+
run: rm -r _build/.doctrees
|
|
199
|
+
|
|
200
|
+
- name: Upload to GitHub Pages
|
|
201
|
+
uses: JamesIves/github-pages-deploy-action@v4
|
|
202
|
+
with:
|
|
203
|
+
folder: _build
|
|
204
|
+
target-folder: main
|
|
205
|
+
clean: false
|
|
206
|
+
```
|
|
207
|
+
|
|
208
|
+
- `build-docs-version.yml` - Build the docs' latest version based on a new release (tag). The build will be published in the root folder and a folder named after the version (e.g. 1.0.3) at the `gh-pages` branch.
|
|
209
|
+
|
|
210
|
+
```yaml
|
|
211
|
+
name: Docs Versioning
|
|
212
|
+
on:
|
|
213
|
+
push:
|
|
214
|
+
tags:
|
|
215
|
+
- "v?*.*.*"
|
|
216
|
+
permissions:
|
|
217
|
+
contents: write
|
|
218
|
+
jobs:
|
|
219
|
+
docs:
|
|
220
|
+
name: Generate Website for new version
|
|
221
|
+
runs-on: ubuntu-latest
|
|
222
|
+
steps:
|
|
223
|
+
- uses: actions/checkout@v3
|
|
224
|
+
|
|
225
|
+
- uses: actions/setup-python@v4
|
|
226
|
+
with:
|
|
227
|
+
python-version: "3.9"
|
|
228
|
+
|
|
229
|
+
- name: Install docs dependencies
|
|
230
|
+
run: pip install -r docs/requirements.txt
|
|
231
|
+
|
|
232
|
+
- name: Install Gymnasium
|
|
233
|
+
run: pip install mujoco && pip install .[atari,accept-rom-license,box2d]
|
|
234
|
+
|
|
235
|
+
- name: Build Envs Docs
|
|
236
|
+
run: python docs/_scripts/gen_mds.py && python docs/_scripts/gen_envs_display.py
|
|
237
|
+
|
|
238
|
+
- name: Build
|
|
239
|
+
run: sphinx-build -b dirhtml -v docs _build
|
|
240
|
+
|
|
241
|
+
- name: Move 404
|
|
242
|
+
run: mv _build/404/index.html _build/404.html
|
|
243
|
+
|
|
244
|
+
- name: Update 404 links
|
|
245
|
+
run: python docs/_scripts/move_404.py _build/404.html
|
|
246
|
+
|
|
247
|
+
- name: Remove .doctrees
|
|
248
|
+
run: rm -r _build/.doctrees
|
|
249
|
+
|
|
250
|
+
- name: Upload to GitHub Pages
|
|
251
|
+
uses: JamesIves/github-pages-deploy-action@v4
|
|
252
|
+
with:
|
|
253
|
+
folder: _build
|
|
254
|
+
target-folder: ${{github.ref_name}}
|
|
255
|
+
clean: false
|
|
256
|
+
|
|
257
|
+
- name: Upload to GitHub Pages
|
|
258
|
+
uses: JamesIves/github-pages-deploy-action@v4
|
|
259
|
+
if: ${{ !contains(github.ref_name, 'a') }}
|
|
260
|
+
with:
|
|
261
|
+
folder: _build
|
|
262
|
+
clean-exclude: |
|
|
263
|
+
*.*.*/
|
|
264
|
+
main
|
|
265
|
+
```
|
|
266
|
+
|
|
267
|
+
- `build-manual-docs-version.yml` - Build a certain version of the documentation website based on a certain commit. The build will be published in the root folder (if the option latest is enabled) and a folder named after the version (e.g. 1.0.3) at the `gh-pages` branch.
|
|
268
|
+
|
|
269
|
+
```yaml
|
|
270
|
+
name: Manual Docs Versioning
|
|
271
|
+
on:
|
|
272
|
+
workflow_dispatch:
|
|
273
|
+
inputs:
|
|
274
|
+
version:
|
|
275
|
+
description: "Documentation version to create"
|
|
276
|
+
required: true
|
|
277
|
+
commit:
|
|
278
|
+
description: "Commit used to build the Documentation version"
|
|
279
|
+
required: false
|
|
280
|
+
latest:
|
|
281
|
+
description: "Latest version"
|
|
282
|
+
type: boolean
|
|
283
|
+
|
|
284
|
+
permissions:
|
|
285
|
+
contents: write
|
|
286
|
+
jobs:
|
|
287
|
+
docs:
|
|
288
|
+
name: Generate Website for the new version
|
|
289
|
+
runs-on: ubuntu-latest
|
|
290
|
+
steps:
|
|
291
|
+
- uses: actions/checkout@v3
|
|
292
|
+
if: inputs.commit == ''
|
|
293
|
+
|
|
294
|
+
- uses: actions/checkout@v3
|
|
295
|
+
if: inputs.commit != ''
|
|
296
|
+
with:
|
|
297
|
+
ref: ${{ inputs.commit }}
|
|
298
|
+
|
|
299
|
+
- uses: actions/setup-python@v4
|
|
300
|
+
with:
|
|
301
|
+
python-version: "3.9"
|
|
302
|
+
|
|
303
|
+
- name: Install dependencies
|
|
304
|
+
run: pip install -r docs/requirements.txt
|
|
305
|
+
|
|
306
|
+
- name: Install Gymnasium
|
|
307
|
+
run: pip install mujoco && pip install .[atari,accept-rom-license,box2d]
|
|
308
|
+
|
|
309
|
+
- name: Build Envs Docs
|
|
310
|
+
run: python docs/_scripts/gen_mds.py && python docs/_scripts/gen_envs_display.py
|
|
311
|
+
|
|
312
|
+
- name: Build
|
|
313
|
+
run: sphinx-build -b dirhtml -v docs _build
|
|
314
|
+
|
|
315
|
+
- name: Move 404
|
|
316
|
+
run: mv _build/404/index.html _build/404.html
|
|
317
|
+
|
|
318
|
+
- name: Update 404 links
|
|
319
|
+
run: python docs/_scripts/move_404.py _build/404.html
|
|
320
|
+
|
|
321
|
+
- name: Remove .doctrees
|
|
322
|
+
run: rm -r _build/.doctrees
|
|
323
|
+
|
|
324
|
+
- name: Upload to GitHub Pages
|
|
325
|
+
uses: JamesIves/github-pages-deploy-action@v4
|
|
326
|
+
with:
|
|
327
|
+
folder: _build
|
|
328
|
+
target-folder: ${{ inputs.version }}
|
|
329
|
+
clean: false
|
|
330
|
+
|
|
331
|
+
- name: Upload to GitHub Pages
|
|
332
|
+
uses: JamesIves/github-pages-deploy-action@v4
|
|
333
|
+
if: inputs.latest
|
|
334
|
+
with:
|
|
335
|
+
folder: _build
|
|
336
|
+
clean-exclude: |
|
|
337
|
+
*.*.*/
|
|
338
|
+
main
|
|
339
|
+
```
|
|
340
|
+
|
|
341
|
+
## Theme Options
|
|
342
|
+
|
|
343
|
+
### Google Analytics
|
|
344
|
+
|
|
345
|
+
To enable Google Analytics add the following theme option in the `conf.py` file.
|
|
346
|
+
|
|
347
|
+
```python
|
|
348
|
+
html_theme_options = {
|
|
349
|
+
"gtag": "G-6H9C8TWXZ8",
|
|
350
|
+
}
|
|
351
|
+
```
|
|
352
|
+
|
|
353
|
+
### Donations Banner/Button
|
|
354
|
+
|
|
355
|
+
To enable the donations banner and sidebar button, add the following theme option in the `conf.py` file.
|
|
356
|
+
|
|
357
|
+
```python
|
|
358
|
+
html_theme_options = {
|
|
359
|
+
"donations": True,
|
|
360
|
+
}
|
|
361
|
+
```
|
|
362
|
+
|
|
363
|
+
### Edit page button
|
|
364
|
+
|
|
365
|
+
To enable the edit page button, which redirects the user to the source code of the page (i.e. markdown file), add the following context dictionary to the `conf.py` script.
|
|
366
|
+
|
|
367
|
+
```python
|
|
368
|
+
html_theme_options = {
|
|
369
|
+
"source_repository": "https://github.com/Farama-Foundation/<PROJECT>/",
|
|
370
|
+
"source_branch": "main",
|
|
371
|
+
"source_directory": "docs/",
|
|
372
|
+
}
|
|
373
|
+
```
|
|
374
|
+
|
|
375
|
+
### Other Theme options
|
|
376
|
+
|
|
377
|
+
```python
|
|
378
|
+
html_theme_options = {
|
|
379
|
+
"light_logo": "img/gymnasium_black.svg",
|
|
380
|
+
"dark_logo": "img/gymnasium_white.svg",
|
|
381
|
+
"description": "A standard API for reinforcement learning and a diverse set of reference environments (formerly Gym)",
|
|
382
|
+
"image": "img/gymnasium-github.png",
|
|
383
|
+
}
|
|
384
|
+
```
|
|
385
|
+
|
|
386
|
+
## Custom Directives
|
|
387
|
+
|
|
388
|
+
We provided a set of custom directives that enable us to keep a standard style across the different projects.
|
|
389
|
+
|
|
390
|
+
### Project Logo
|
|
391
|
+
|
|
392
|
+
This is usually used on the index page of the documentation.
|
|
393
|
+
|
|
394
|
+
````
|
|
395
|
+
```{project-logo} _static/gymnasium-text.png
|
|
396
|
+
:alt: Gymnasium Logo
|
|
397
|
+
```
|
|
398
|
+
````
|
|
399
|
+
|
|
400
|
+
### Project Heading
|
|
401
|
+
|
|
402
|
+
This is usually used on the index page of the documentation after the project logo.
|
|
403
|
+
|
|
404
|
+
````
|
|
405
|
+
```{project-heading}
|
|
406
|
+
A clean customisable Sphinx documentation theme.
|
|
407
|
+
```
|
|
408
|
+
````
|
|
409
|
+
|
|
410
|
+
## Frontmatter
|
|
411
|
+
|
|
412
|
+
### Disable Previous page and/or Next page buttons
|
|
413
|
+
|
|
414
|
+
If you don't want a certain page to have the `Next` and/or `Previous` buttons at the bottom you can disable them by adding the following variables to the front matter block of the markdown file:
|
|
415
|
+
|
|
416
|
+
- `firstpage:` - disables `Previous` button
|
|
417
|
+
|
|
418
|
+
- `lastpage:` - disables `Next` button
|
|
419
|
+
|
|
420
|
+
For example:
|
|
421
|
+
|
|
422
|
+
```
|
|
423
|
+
---
|
|
424
|
+
firstpage:
|
|
425
|
+
lastpage:
|
|
426
|
+
---
|
|
427
|
+
```
|
|
428
|
+
|
|
429
|
+
### Disable page edit button for autogenerated pages
|
|
430
|
+
|
|
431
|
+
Add the following variable to the front matter block of the markdown file:
|
|
432
|
+
|
|
433
|
+
```
|
|
434
|
+
---
|
|
435
|
+
autogenerated:
|
|
436
|
+
---
|
|
437
|
+
```
|
|
438
|
+
|
|
439
|
+
### Environment Icon
|
|
440
|
+
|
|
441
|
+
To add an icon next to the page title (H1 or H2, but it needs to be the first) add the following variable to the front matter block of the markdown file:
|
|
442
|
+
|
|
443
|
+
```
|
|
444
|
+
---
|
|
445
|
+
env_icon: [path to icon]
|
|
446
|
+
---
|
|
447
|
+
```
|
|
448
|
+
|
|
449
|
+
### Farama Top Menu
|
|
450
|
+
|
|
451
|
+
The Farama Foundation top menu is built using the response of the API [farama.org/api/projects.json](https://farama.org/api/projects.json). The source code of the API can found [here](https://github.com/Farama-Foundation/farama.org/blob/main/api/projects.json) and the source code of the menu [here](https://github.com/Farama-Foundation/Celshast/blob/main/src/celshast/theme/celshast/base.html#L238)
|
|
452
|
+
|
|
453
|
+
## Tutorials
|
|
454
|
+
|
|
455
|
+
We use [sphinx-gallery](https://sphinx-gallery.github.io/stable/index.html) to build the tutorials. To add `sphinx-gallery` you need to add the following code to the `conf.py` script (assuming that all tutorials are in the folder `docs/tutorials`). Don't forget to add `sphinx-gallery` to the docs requirements.
|
|
456
|
+
|
|
457
|
+
```python
|
|
458
|
+
extensions = [
|
|
459
|
+
...
|
|
460
|
+
"sphinx_gallery.gen_gallery",
|
|
461
|
+
]
|
|
462
|
+
|
|
463
|
+
# -- Generate Tutorials -------------------------------------------------
|
|
464
|
+
|
|
465
|
+
sphinx_gallery.gen_rst.EXAMPLE_HEADER = """
|
|
466
|
+
.. DO NOT EDIT.
|
|
467
|
+
.. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY.
|
|
468
|
+
.. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE:
|
|
469
|
+
.. "{0}"
|
|
470
|
+
.. LINE NUMBERS ARE GIVEN BELOW.
|
|
471
|
+
|
|
472
|
+
.. rst-class:: sphx-glr-example-title
|
|
473
|
+
|
|
474
|
+
.. _sphx_glr_{1}:
|
|
475
|
+
|
|
476
|
+
"""
|
|
477
|
+
|
|
478
|
+
sphinx_gallery_conf = {
|
|
479
|
+
"ignore_pattern": r"__init__\.py",
|
|
480
|
+
"examples_dirs": "./tutorials",
|
|
481
|
+
"gallery_dirs": "./tutorials",
|
|
482
|
+
"show_signature": False,
|
|
483
|
+
"show_memory": False,
|
|
484
|
+
"min_reported_time": float("inf"),
|
|
485
|
+
"filename_pattern": f"{re.escape(os.sep)}run_",
|
|
486
|
+
"default_thumb_file": os.path.join(
|
|
487
|
+
os.path.dirname(__file__), "_static/img/minari-text.png"
|
|
488
|
+
),
|
|
489
|
+
}
|
|
490
|
+
```
|
|
491
|
+
|
|
492
|
+
## Building Theme from source
|
|
493
|
+
|
|
494
|
+
To contribute to the theme you will need to build it. The toolchain (Python, Node, `uv`, `just`) is pinned in `mise.toml`; install [mise](https://mise.jdx.dev/) and run `mise install` from the repo root to provision matching versions.
|
|
495
|
+
|
|
496
|
+
```
|
|
497
|
+
mise install
|
|
498
|
+
just serve
|
|
499
|
+
```
|
|
500
|
+
|
|
501
|
+
`just serve` runs the live-reload docs server bound to `0.0.0.0:8000` so the site is reachable from another device on your LAN (e.g. a phone). To use a different host or port:
|
|
502
|
+
|
|
503
|
+
```
|
|
504
|
+
just serve 127.0.0.1 9000
|
|
505
|
+
```
|
|
506
|
+
|
|
507
|
+
Other recipes in the `Justfile`:
|
|
508
|
+
|
|
509
|
+
- `just build` — build the docs into `build/docs` once (no live-reload).
|
|
510
|
+
- `just lint` — run the pre-commit linters (ruff, prettier, mypy, …).
|
|
511
|
+
|
|
512
|
+
Each recipe is a thin wrapper around `uvx nox -s <session>`. Nox uses `uv` as its venv backend (configured in `noxfile.py`), so session installs are fast. Available sessions: `docs`, `docs-live`, `lint`, `release`.
|
|
513
|
+
|
|
514
|
+
For a fuller walkthrough of the contributor workflow — initial setup, linting, the dev server, the release process — see `docs/contributing/workflow.md` (or run `just serve` and browse to it).
|
|
515
|
+
|
|
516
|
+
## License
|
|
517
|
+
|
|
518
|
+
This project is licensed under the MIT License.
|