name: CI on: push: branches: - main - dev pull_request: workflow_dispatch: jobs: frontend: runs-on: ubuntu-latest steps: - name: Checkout repository uses: actions/checkout@v4 - name: Set up Bun uses: oven-sh/setup-bun@v2 with: bun-version: latest - name: Install dependencies run: bun install - name: Type check run: bun run check - name: Build run: bun run build backend: runs-on: ubuntu-latest steps: - name: Checkout repository uses: actions/checkout@v4 - name: Install system dependencies run: | apt-get update apt-get install -y pkg-config libssl-dev - name: Clone Typst compiler run: | git clone https://github.com/typst/typst.git typst git -C typst checkout 9dfd3a08500b7896045f907433cf7b4b02434fad - name: Set up Rust uses: dtolnay/rust-toolchain@stable with: components: clippy - name: Cache cargo uses: actions/cache@v4 with: path: | ~/.cargo/registry ~/.cargo/git server/target key: cargo-${{ hashFiles('server/Cargo.lock') }} restore-keys: cargo- - name: Check run: cargo check --manifest-path server/Cargo.toml - name: Clippy run: cargo clippy --manifest-path server/Cargo.toml -- -D warnings continue-on-error: true