mirror of
https://github.com/clockworklabs/SpacetimeDB.git
synced 2026-05-15 04:08:02 -04:00
afb8c08b98
## Description of Changes - Migrate the documentation site to **Docusaurus**. - Add a **GitHub Action workflow** that runs `pnpm build` on pull requests targeting `master`. This command checks for broken links and images and ensures the site builds correctly. - Add a **GitHub Action workflow** to publish the docs automatically when a merge occurs on the `docs/release` branch. **Important**: The workflows haven't been tested yet due to the fact that they need to be merged first before being able to run. It's a fairly basic workflow I don't expect this to block anyone but anyways I will make another PR with the complete changes when I can actually run it. --- ## API and ABI Breaking Changes No breaking changes for **SpacetimeDB** users. Documentation contributors should experience minimal disruption — content is still written in Markdown. --- ## Expected Complexity Level and Risk **Complexity:** 3/5 **Reasons:** 1. Several adjustments were made to fit Docusaurus conventions: - Replaced our custom `:::server-rust` blocks with [Docusaurus `<Tabs/>` components](https://docusaurus.io/docs/markdown-features/tabs). - Converted “Note” callouts using [admonitions](https://docusaurus.io/docs/markdown-features/admonitions) instead of Markdown blockquotes. - Updated all images (including Unity tutorial ones, which were previously commented out). - Moved images from the DO bucket into the repository at `docs/static/images`. 2. Customized Docusaurus CSS and one component to apply our theme and color palette. --- ## Testing Tested locally. --- ## Review Notes This PR involves many file changes — a full code review is likely not productive. Instead, please focus on verifying that the **documentation content** was migrated correctly: - Review sections you’re familiar with to confirm accuracy. - Ensure formatting, links, and images render as expected. You can follow the updated **README** for instructions on running Docusaurus locally. --------- Signed-off-by: Julien Lavocat <JulienLavocat@users.noreply.github.com> Co-authored-by: John Detter <4099508+jdetter@users.noreply.github.com> Co-authored-by: Tyler Cloutier <cloutiertyler@users.noreply.github.com> Co-authored-by: = <cloutiertyler@gmail.com>
45 lines
1018 B
YAML
45 lines
1018 B
YAML
name: Docs / Test
|
|
permissions:
|
|
contents: read
|
|
|
|
on:
|
|
pull_request:
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout repository
|
|
uses: actions/checkout@v3
|
|
|
|
- name: Set up Node.js
|
|
uses: actions/setup-node@v3
|
|
with:
|
|
node-version: '22'
|
|
|
|
- uses: pnpm/action-setup@v4
|
|
with:
|
|
run_install: true
|
|
|
|
- name: Get pnpm store directory
|
|
working-directory: sdks/typescript
|
|
shell: bash
|
|
run: |
|
|
echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV
|
|
|
|
- uses: actions/cache@v4
|
|
name: Setup pnpm cache
|
|
with:
|
|
path: ${{ env.STORE_PATH }}
|
|
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
|
|
restore-keys: |
|
|
${{ runner.os }}-pnpm-store-
|
|
|
|
- name: Install dependencies
|
|
working-directory: docs
|
|
run: pnpm install
|
|
|
|
- name: Docusaurus build
|
|
working-directory: docs
|
|
run: pnpm build
|