{
  "name": "idatt2106_2024_02_frontend",
  "version": "0.0.0",
  "private": true,
  "type": "module",
  "scripts": {
    "dev": "vite",
    "build": "run-p type-check \"build-only {@}\" --",
    "preview": "vite preview",
    "test:unit": "vitest",
    "test:e2e": "start-server-and-test 'vite dev --port 4173' :4173 'cypress run --e2e'",
    "test:e2e:dev": "start-server-and-test 'vite dev --port 4173' :4173 'cypress open --e2e'",
    "build-only": "vite build",
    "type-check": "vue-tsc --build --force",
    "lint": "eslint . --ext .vue,.js,.jsx,.cjs,.mjs,.ts,.tsx,.cts,.mts --fix --ignore-path .gitignore",
    "test:coverage": "vitest run --coverage --environment jsdom",
    "format": "prettier --write src/",
    "format-test": "prettier --check src/"
  },
  "dependencies": {
    "animejs": "^3.2.2",
    "canvas-confetti": "^1.9.2",
    "pinia": "^2.1.7",
    "vue": "^3.4.21",
    "vue-router": "^4.3.1",
    "vue3-flip-countdown": "^0.1.6",
    "vuedraggable": "^4.1.0"
  },
  "devDependencies": {
    "@rushstack/eslint-patch": "^1.8.0",
    "@tsconfig/node20": "^20.1.4",
    "@types/animejs": "^3.1.12",
    "@types/canvas-confetti": "^1.6.4",
    "@types/jsdom": "^21.1.6",
    "@types/node": "^20.12.5",
    "@typescript-eslint/eslint-plugin": "^7.7.0",
    "@typescript-eslint/parser": "^7.7.0",
    "@vitejs/plugin-vue": "^5.0.4",
    "@vitest/coverage-v8": "^1.5.0",
    "@vue/eslint-config-prettier": "^9.0.0",
    "@vue/eslint-config-typescript": "^13.0.0",
    "@vue/test-utils": "^2.4.5",
    "@vue/tsconfig": "^0.5.1",
    "autoprefixer": "^10.4.19",
    "axios-mock-adapter": "^1.22.0",
    "cypress": "^13.7.3",
    "eslint": "^8.57.0",
    "eslint-plugin-cypress": "^2.15.1",
    "eslint-plugin-vue": "^9.23.0",
    "jsdom": "^24.0.0",
    "npm-run-all2": "^6.1.2",
    "postcss": "^8.4.38",
    "prettier": "^3.2.5",
    "start-server-and-test": "^2.0.3",
    "tailwindcss": "^3.4.3",
    "typescript": "~5.4.0",
    "vite": "^5.2.8",
    "vitest": "^1.4.0",
    "vue-tsc": "^2.0.11"
  }
}