| # IREE User-Facing Documentation Website | |
| This directory contains the source and assets for <https://iree.dev/>. | |
| The website is generated using [MkDocs](https://www.mkdocs.org/), with the | |
| [Material for MkDocs](https://squidfunk.github.io/mkdocs-material/) theme and | |
| is served using [GitHub Pages](https://pages.github.com/). | |
| ## How to edit this documentation | |
| Follow <https://squidfunk.github.io/mkdocs-material/getting-started/> and read | |
| <https://www.mkdocs.org/>. | |
| All steps below are from this `docs/website/` folder. | |
| **Setup** as needed: | |
| ```shell | |
| python3 -m venv .venv | |
| source .venv/bin/activate | |
| pip install -r requirements.txt | |
| ``` | |
| **Develop** by building and running a local webserver: | |
| ```shell | |
| # Optionally generate extra files, e.g. MLIR dialect pages produced by tablegen | |
| # The website will still work without these pages. | |
| # ./generate_extra_files.sh | |
| mkdocs serve | |
| ``` | |
| ### Deploying the documentation | |
| The | |
| [`publish_website.yml`](https://github.com/iree-org/iree/actions/workflows/publish_website.yml) | |
| workflow in <https://github.com/iree-org/iree> builds the website and deploys | |
| it automatically. | |
| If you want to host the documentation on your own GitHub Pages site, such as to | |
| allow code reviewers to preview your changes, you can deploy the documentation | |
| yourself. | |
| > [!IMPORTANT] | |
| > If you are just previewing changes locally, you don't need this! | |
| > | |
| > This force pushes to the `gh-pages` branch on `<your remote>`. Please don't | |
| > push to the main <https://github.com/iree-org/iree> repository :) | |
| To deploy to a remote: | |
| ```shell | |
| mkdocs gh-deploy --remote-name <your remote> | |
| ``` | |
| Assuming you have GitHub Pages configured for your remote from the `gh-pages` | |
| branch (see `https://github.com/<your remote>/iree/settings/pages`), the | |
| website should be live shortly at `https://<your remote>.github.io/iree`. | |
| ## Website sections and authoring tips | |
| For more details on how this is set up, see | |
| [IREE Website Overview - July 10, 2023](https://docs.google.com/presentation/d/116TyW_aCsPXmmjRYI2tRqpOwDaGNoV8LDC_j9hsMrDk/edit?usp=sharing) | |
| (though note that the website organization has changed since then). | |
| For documentation language and style, the guide at | |
| <https://developers.google.com/style> offers good advice. | |
| ### Building from source | |
| Instructions on how to build the project from source on supported platforms. | |
| * Focus on instructions that apply to all users, independent of specific | |
| package managers and development styles | |
| * Set developers up for success with good default options | |
| * Explain how interact with the build system and its outputs | |
| ### Guides | |
| Workflow-oriented guides showing users how to accomplish tasks | |
| ### Reference | |
| Unopinionated descriptions of system components | |
| ### Developers | |
| Less structured pages for project development topics | |
| * Pages may be "promoted" from this category to another category if they are | |
| generally useful to a wide enough range of developers | |
| ### Community (Blog) | |
| A place to showcase work across the community |