Back to Pixi

A pixi example to build an emscripten / WASM environment

examples/wasm-jupyterlite/README.md

0.67.21.4 KB
Original Source

A pixi example to build an emscripten / WASM environment

Read more in our blog post

Did you know that pixi can handle conda packages that are compiled to WebAssembly? This example shows how to build a simple environment to start & deploy a JupyterLite project with some WASM packages installed.

To deploy to Github pages using pixi, you can use the following Github Actions workflow (adapted from the official Jupyterlite demo repo).

You can find a full example (and demo deployment) in this GitHub repository and the deployed site.

yaml
name: Build and Deploy

on:
  push:
    branches:
      - main
  pull_request:
    branches:
      - '*'

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout
        uses: actions/checkout@v4
      - name: Setup pixi
        uses: prefix-dev/[email protected]
      - name: Build dist
        run: pixi run build-dist
      - name: Upload artifact
        uses: actions/upload-pages-artifact@v3
        with:
          path: ./dist

  deploy:
    needs: build
    if: github.ref == 'refs/heads/main'
    permissions:
      pages: write
      id-token: write

    environment:
      name: github-pages
      url: ${{ steps.deployment.outputs.page_url }}

    runs-on: ubuntu-latest
    steps:
      - name: Deploy to GitHub Pages
        id: deployment
        uses: actions/deploy-pages@v4