Skip to content

Update code

Update code #3

Workflow file for this run

name: Docs (GitHub Pages)
on:
push:
branches: [main]
workflow_dispatch:
permissions:
contents: read
pages: write
id-token: write
concurrency:
group: pages
cancel-in-progress: true
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Check out tree-sitter-multilingual
uses: actions/checkout@v4
with:
repository: multilingualprogramming/tree-sitter-multilingual
path: tree-sitter-multilingual
- name: Setup Python
uses: actions/setup-python@v5
with:
python-version: "3.12"
- name: Install build + docs dependencies
run: |
python -m pip install --upgrade pip
python -m pip install -e ".[wasm]" build mkdocs-material
- name: Build wheel and stage playground assets
run: |
python -m build --wheel
mkdir -p docs/assets
cp multilingualprogramming/resources/usm/keywords.json docs/assets/keywords.json
cp tree-sitter-multilingual/generated/monarch.json docs/assets/monarch.json
WHEEL_FILE=$(ls dist/*.whl | head -n 1 | xargs basename)
cp "dist/${WHEEL_FILE}" "docs/assets/${WHEEL_FILE}"
echo "{\"wheel\": \"${WHEEL_FILE}\"}" > docs/assets/wheel_info.json
- name: Build browser demo bundles for Pages
run: |
mkdir -p docs/browser/fibonacci docs/browser/dom-demo
python -m multilingualprogramming build-wasm-bundle examples/browser/fibonacci_en.multi --lang en --out-dir docs/browser/fibonacci
python -m multilingualprogramming build-wasm-bundle examples/browser/dom_demo_en.multi --lang en --out-dir docs/browser/dom-demo
cp examples/browser/browser_runtime.js docs/browser/fibonacci/browser_runtime.js
cp examples/browser/browser_runtime.js docs/browser/dom-demo/browser_runtime.js
- name: Build Memory Game UI bundle for Pages (Reactive UI showcase)
run: |
mkdir -p docs/browser/memory-game
python -m multilingualprogramming build-ui-bundle examples/memory_game_en.multi --lang en --out-dir docs/browser/memory-game
- name: Stage root docs into docs_dir
run: python tools/stage_docs.py
- name: Build site
run: mkdocs build --strict
- name: Configure GitHub Pages
uses: actions/configure-pages@v5
- name: Upload artifact
uses: actions/upload-pages-artifact@v3
with:
path: site
deploy:
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
runs-on: ubuntu-latest
needs: build
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4