name: CI on: push: branches: [main] pull_request: jobs: frontend: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: pnpm/action-setup@v4 with: version: 10 - uses: actions/setup-node@v4 with: node-version: 20 cache: pnpm - run: pnpm install --frozen-lockfile - run: pnpm typecheck backend: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Install system deps run: | sudo apt-get update sudo apt-get install -y \ libwebkit2gtk-4.1-dev \ libjavascriptcoregtk-4.1-dev \ libsoup-3.0-dev \ libayatana-appindicator3-dev \ librsvg2-dev \ libssl-dev \ libgtk-3-dev \ libxdo-dev \ pkg-config \ build-essential - uses: dtolnay/rust-toolchain@stable with: components: rustfmt, clippy - uses: Swatinem/rust-cache@v2 with: workspaces: src-tauri - run: cargo fmt --all -- --check working-directory: src-tauri - run: cargo clippy --all-targets --locked -- -D warnings working-directory: src-tauri - run: cargo test --locked working-directory: src-tauri