name: checks on: push: pull_request: jobs: lint-and-test: name: Check & Test (Frontend + Backend) runs-on: ubuntu-latest steps: #Checkout repository - name: Checkout repository uses: actions/checkout@v4 #Set up Node.js for React tests - name: Set up Node.js uses: actions/setup-node@v4 with: node-version: '20' # adjust to your project version or via env cache: 'yarn' # or 'npm' if you use npm #Install frontend dependencies - name: Install frontend dependencies working-directory: ./frontend # adjust if your React app folder differs run: | yarn install --frozen-lockfile #Run React unit tests #- name: Run React unit tests # working-directory: ./frontend # run: | # yarn test --watchAll=false --ci #Set up Java for backend tests - name: Set up Java uses: actions/setup-java@v4 with: distribution: temurin java-version: '21' # adjust to match your backend version cache: maven # or 'gradle' if you use Gradle #Build & test backend - name: Build & test backend working-directory: src # adjust if your Spring Boot project path differs run: | mvn clean verify package -B # or ./gradlew clean test build if using Gradle