{ "name": "trainus", "private": true, "version": "1.0.0", "type": "module", "scripts": { "dev": "vite", "build": "vite build", "preview": "vite preview", "format": "prettier --write .", "format:check": "prettier --check .", "lint": "eslint src", "lint:fix": "eslint src --fix", "test": "cd tests && .venv/bin/python -m pytest --browser firefox -v", "test:chromium": "cd tests && .venv/bin/python -m pytest --browser chromium -v", "test:parallel": "cd tests && .venv/bin/python -m pytest --browser firefox --browser chromium --dist loadfile -n auto -v", "test:parallel:firefox": "cd tests && .venv/bin/python -m pytest --browser firefox --dist loadfile -n auto -v", "test:parallel:chromium": "cd tests && .venv/bin/python -m pytest --browser chromium --dist loadfile -n auto -v", "test:parallel:n": "cd tests && .venv/bin/python -m pytest --browser firefox --browser chromium --dist loadfile -n ${WORKERS:-4} -v", "site:dev": "cd website && hugo server --buildDrafts --port 1313", "site:build": "cd website && hugo --minify" }, "dependencies": { "@sqlite.org/sqlite-wasm": "^3.51.2-build7", "bootstrap-icons": "^1.13.1", "chart.js": "^4.5.1", "dompurify": "^3.4.7", "i18next": "^25.8.17", "i18next-vue": "^5.4.0", "marked": "^18.0.4", "vue": "^3.5.25", "vue-chartjs": "^5.3.3", "vue-router": "^4.6.4" }, "devDependencies": { "@eslint/js": "^10.0.1", "@vitejs/plugin-vue": "^6.0.2", "eslint": "^10.5.0", "eslint-config-prettier": "^10.1.8", "eslint-plugin-vue": "^10.9.2", "prettier": "^3.8.1", "vite": "^7.3.1", "vite-plugin-pwa": "^1.3.0" } }