Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/reuse-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout git repository
uses: actions/checkout@v4
uses: actions/checkout@v5

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
Expand Down
12 changes: 5 additions & 7 deletions .github/workflows/reuse-quality.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,17 +8,15 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout git repository
uses: actions/checkout@v4
- uses: actions/setup-node@v3
uses: actions/checkout@v5

- uses: actions/setup-node@v5
with:
node-version: 22
node-version: 24
cache: 'npm'

- name: Install dependencies
run: |
npm ci --no-audit --no-fund --omit=optional
npm i --no-save @rollup/rollup-linux-x64-gnu
run: npm ci

- name: Run quality checks
run: npm run quality
Expand Down
6 changes: 6 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,9 @@
node_modules/
api/config/local-*
.type/

# tests de snapshot visuels : locaux uniquement, jamais commités
tests/**/*.snap.spec.ts
tests/**/*-snapshots/
test-results/
playwright-report/
2 changes: 1 addition & 1 deletion .nvmrc
Original file line number Diff line number Diff line change
@@ -1 +1 @@
22
24
28 changes: 28 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -85,3 +85,31 @@ Access the running services at <http://localhost:5600/openapi-viewer>

- Use <kbd>Ctrl</kbd> + <kbd>Q</kbd> to quit Zellij.
- Click on a panel, then use <kbd>Ctrl</kbd> + <kbd>C</kbd> then <kbd>Esc</kbd> to stop a terminal and regain access of the panel.

## Tests

Tests use [Playwright](https://playwright.dev/). Three projects are defined in
`playwright.config.ts` :

- **unit** (`tests/*.unit.spec.ts`) — pure functions (e.g. query params
serialization), no browser, no running stack. Run in CI.
- **e2e** (`tests/*.e2e.spec.ts`) — behavioural checks against the running app.
Committed but **not run in CI** (they need the full stack).
- **snapshot** (`tests/*.snap.spec.ts`) — visual screenshots. **Local only**:
spec files and baseline images are gitignored and never committed.

```sh
# unit tests only (no stack needed)
npm run test-unit

# e2e / snapshot need the stack running (dev-deps + api + ui, see above)
npm run test-e2e
npm run test-snapshot

# review visual diffs side by side (expected / actual / diff)
npx playwright show-report
```

The snapshot project is meant for **manual** visual non-regression review (e.g.
before/after a major Vuetify upgrade): capture baselines, re-run after the
change, then walk the HTML report to judge each diff.
6 changes: 3 additions & 3 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# =============================
# Base Node image
# =============================
FROM node:22.14.0-alpine3.21 AS base
FROM node:24.11.1-alpine3.22 AS base

WORKDIR /app
ENV NODE_ENV=production
Expand Down Expand Up @@ -30,7 +30,7 @@ COPY ui/package.json ui/package.json
COPY api/package.json api/package.json
# full deps install used for types and ui building
# also used to fill the npm cache for faster install api deps
RUN npm ci --omit=dev --omit=optional --omit=peer --no-audit --no-fund
RUN npm ci --omit=dev --no-audit --no-fund

# =============================
# Build Types
Expand Down Expand Up @@ -59,7 +59,7 @@ RUN npm -w ui run build
FROM installer AS api-installer

# remove other workspaces and reinstall, otherwise we can get rig have some peer dependencies from other workspaces
RUN npm ci -w api --prefer-offline --omit=dev --omit=optional --omit=peer --no-audit --no-fund && \
RUN npm ci -w api --prefer-offline --omit=dev --omit=optional --no-audit --no-fund && \
npx clean-modules --yes
RUN mkdir -p /app/api/node_modules

Expand Down
7 changes: 5 additions & 2 deletions api/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,14 @@
"#config": "./src/config.ts"
},
"dependencies": {
"@data-fair/lib-express": "^1.16.0",
"@data-fair/lib-node": "^2.5.0",
"@data-fair/lib-express": "^1.22.5",
"@data-fair/lib-node": "^2.12.1",
"config": "^3.3.12",
"express": "^5.0.1",
"http-terminator": "^3.2.0",
"prom-client": "^15.1.3"
},
"devDependencies": {
"@types/express": "^5.0.6"
}
}
Loading
Loading