diff --git a/.github/workflows/lint.yaml b/.github/workflows/lint.yaml index 0d9cc78..87fba20 100644 --- a/.github/workflows/lint.yaml +++ b/.github/workflows/lint.yaml @@ -28,4 +28,37 @@ jobs: - name: Run linters run: | source .venv/bin/activate - make lint \ No newline at end of file + make lint + + lint-frontend: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + + - name: Setup Node.js + uses: actions/setup-node@v4 + with: + node-version: '22' + + - name: Install pnpm + run: npm install -g pnpm + + - name: Install frontend dependencies + run: | + cd web + pnpm install --frozen-lockfile + + - name: Run frontend linting + run: | + cd web + pnpm lint + + - name: Check TypeScript types + run: | + cd web + pnpm typecheck + + - name: Build frontend + run: | + cd web + pnpm build \ No newline at end of file diff --git a/Makefile b/Makefile index 37d1d2e..1e35ceb 100644 --- a/Makefile +++ b/Makefile @@ -1,4 +1,4 @@ -.PHONY: help lint format install-dev serve test coverage langgraph-dev +.PHONY: help lint format install-dev serve test coverage langgraph-dev lint-frontend help: ## Show this help message @echo "Deer Flow - Available Make Targets:" @@ -16,6 +16,12 @@ format: ## Format code using ruff lint: ## Lint and fix code using ruff uv run ruff check --fix --select I --config pyproject.toml . +lint-frontend: ## Lint frontend code and check build + cd web && pnpm install --frozen-lockfile + cd web && pnpm lint + cd web && pnpm typecheck + cd web && pnpm build + serve: ## Start development server with reload uv run server.py --reload