{ "name": "tech-talks-portal", "private": true, "version": "1.0.0", "description": "Portail VitePress + decks Slidev", "scripts": { "sync": "node tools/sync-portal.mjs", "start": "node tools/run.mjs", "build": "node tools/sync-portal.mjs && vitepress build portal && node tools/build-all-decks.mjs", "preview:static": "node tools/static-preview.mjs", "dev:portal": "node tools/dev-portal.mjs", "dev:slides:kubernetes-operators": "slidev slides/kubernetes-operators/slides.md --open", "dev:slides:spring-ai": "slidev slides/spring-ai/slides.md --open", "test": "npm run test:node && npm run test:e2e", "test:node": "node --test tests/site-base.test.mjs tests/presentation-contracts.test.mjs tests/repo-consistency.test.mjs tests/sync-tmp-repo.test.mjs tests/dist-layout.test.mjs tests/vitepress-slides-route.test.mjs", "test:unit": "npm run test:node", "test:e2e": "playwright test", "test:e2e:ui": "playwright test --ui" }, "devDependencies": { "@playwright/test": "^1.59.1", "@slidev/cli": "^52.14.2", "@slidev/theme-default": "^0.25.0", "@types/qrcode": "^1.5.6", "chokidar": "^4.0.3", "serve": "^14.2.6", "sirv": "^3.0.2", "vitepress": "^1.6.4" }, "engines": { "node": ">=18" }, "dependencies": { "qrcode": "^1.5.4" } }