diff --git a/.github/workflows/backend-ci.yml b/.gitea/workflows/backend-ci.yml similarity index 100% rename from .github/workflows/backend-ci.yml rename to .gitea/workflows/backend-ci.yml diff --git a/.gitea/workflows/frontend-ci.yml b/.gitea/workflows/frontend-ci.yml new file mode 100644 index 0000000..e12f691 --- /dev/null +++ b/.gitea/workflows/frontend-ci.yml @@ -0,0 +1,57 @@ +name: Frontend CI + +on: + push: + branches: [ "main", "dev" ] + paths: + - 'frontend/**' + pull_request: + branches: [ "main", "dev" ] + paths: + - 'frontend/**' + +jobs: + build-and-check: + runs-on: ubuntu-latest + + defaults: + run: + working-directory: frontend + + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Setup pnpm + uses: pnpm/action-setup@v4 + with: + version: 10 + run_install: false + + - name: Setup Node.js + uses: actions/setup-node@v4 + with: + node-version: '22.x' + cache: pnpm + cache-dependency-path: frontend/pnpm-lock.yaml + + - name: Install dependencies + run: pnpm install --frozen-lockfile + + - name: Audit dependencies + run: pnpm audit --audit-level moderate + + - name: Check formatting + run: pnpm exec prettier --check src/ + + - name: Lint with oxlint + run: pnpm exec oxlint . + + - name: Lint with ESLint + run: pnpm exec eslint . --max-warnings=0 + + - name: Type check + run: pnpm run type-check + + - name: Build + run: pnpm run build-only