Skip to content

feat: CI improvements and web UI implementation #73

feat: CI improvements and web UI implementation

feat: CI improvements and web UI implementation #73

Workflow file for this run

name: CI
on:
push:
branches: [main]
pull_request:
branches: [main]
workflow_dispatch:
permissions:
contents: read
actions: read
jobs:
test:
strategy:
fail-fast: false
matrix:
quality: [test, typecheck, lint, format]
runs-on: ubuntu-24.04
steps:
- name: Checkout
uses: actions/checkout@v6
- name: Setup Bun
uses: oven-sh/setup-bun@v2
with:
bun-version: latest
- name: Cache Bun dependencies
uses: actions/cache@v5
with:
path: ~/.bun/install/cache
key: ${{ runner.os }}-bun-${{ hashFiles('**/bun.lock') }}
restore-keys: |
${{ runner.os }}-bun-
- name: Install dependencies
run: bun install
- name: Build
if: matrix.quality == 'test'
run: bun run build:all:prod
- name: Run test
if: matrix.quality == 'test'
run: bun test websocket.test.ts web-server.test.ts types.test.ts
- name: Type check
if: matrix.quality == 'typecheck'
run: bun run typecheck
- name: Lint
if: matrix.quality == 'lint'
run: bun run lint
- name: Check formatting
if: matrix.quality == 'format'
run: bun run format:check
dependency-review:
runs-on: ubuntu-24.04
if: github.event_name == 'pull_request'
steps:
- name: Checkout Repository
uses: actions/checkout@v6
- name: Dependency Review
uses: actions/dependency-review-action@v4