-
This directory contains only files that have been modified within the past year (since February 19, 2025). All older files have been moved to the wire-docs repository.
-
These files are included in the
wire-docsrepository as a submodule and are pulled during the build process. They are essential for constructing the complete Wire documentation site. Any changes to these files should be made here, while updates to the older files (not present here anymore) should be committed directly to thewire-docsrepository.
-
The Markdown (.md) pages in this directory should be self-contained, including any static images or diagrams. However, please note that links within these documents may not function correctly, as they are relative to the
wireapp/wire-docs/srcdirectory. To ensure that document links work as intended, collaborate with thewire-docsrepository to identify their correct locations. -
-
This workflow automates documentation validation between the
wire-serverandwire-docsrepositories. -
When a PR is made to
wire-server's develop branch, GitHub Actions cloneswire-docsand temporarily modifies its .gitmodules to point to the PR branch instead of develop. It then runs a build process to validate that the documentation changes work correctly withwire-docssymlink structure. -
If validation passes, the workflow creates a second PR to
wire-docsthat updates the submodule reference to point to the specific commit ID from the original PR. -
This dual-PR approach ensures that documentation changes are fully tested before being merged and maintains version stability by pinpointing exact commits rather than following branches.
-
- wire-docs: Main documentation repository
- wire-server/docs: Documentation related to the code in the
wire-serverrepository
For content in wire-server/docs:
- Make changes directly in the
wire-server/docsdirectory - Create a PR against the
wire-server:developbranch - Once merged, these changes will be picked up by
wire-docsthrough submodule updates
For content only in wire-docs:
- Make changes directly in
wire-docs/src - Create a PR against
wire-docs:mainbranch
When a page needs to be moved because it's related to code changes:
- Add the page to
wire-server/docsand merge it to the develop branch - In
wire-docs:- Update the
wire-serversubmodule (to the latest commit) and commit that change - Delete the original page from
wire-docs/src - Create a relative symbolic link to the file in the
wire-servermodule:cd src/developer/reference/ rm example-file.svg ln -s ../../../wire-server/docs/src/developer/reference/example-file.svg example-file.svg
- Update the
- Commit new linked files before testing with
make run - Test with
make runbefore creating a PR
- Create the file in
wire-server/docs - Merge it into
wire-server:develop - To make it discoverable on docs.wire.com:
- Update the navigation structure in mkdocs.yml or update the directory's README.md to include references to the new file, or add references to the new file from relevant existing pages
- Update the
wire-serversubmodule reference inwire-docs(if not done automatically) and commit the change - Add references to the new file from relevant existing pages
- Test with
make runand create a PR towire-docs:main
- Add the page to
wire-docs/srcin the appropriate location - Update the navigation structure in mkdocs.yml or update the directory's README.md to include references to the new file, or add references to the new file from relevant existing pages
- Test with
make runand create a PR towire-docs:main
- Identify all references to the file in
wire-server/docsandwire-docs - Remove all references and links from navigation (mkdocs.yml) and other pages
- Delete the file from its location
- Submit a PR to
wire-server:develop
- Identify all references to the file in
wire-docsandwire-server/docs - Remove all references and links from navigation (mkdocs.yml) and other pages
- Delete the file from its location
- Commit local deleted files before testing with
make run - Submit a PR to
wire-docs:main
All changes to documentation go live when the CI Build workflow on wire-docs runs. Currently, submodule updates from wire-server to wire-docs are performed manually, but there are plans to automate this with a pipeline.