{ "name": "musare-frontend", "sideEffects": [ "*.css", "*.vue" ], "private": true, "version": "3.12.0-rc1", "description": "An open-source collaborative music listening and catalogue curation application. Currently supporting YouTube based content.", "main": "main.js", "author": "Musare Team", "license": "GPL-3.0", "repository": "https://github.com/Musare/Musare", "scripts": { "lint": "eslint . --ext .js,.ts,.vue", "dev": "vite", "prod": "vite build --emptyOutDir", "typescript": "vue-tsc --noEmit --skipLibCheck", "test": "vitest", "coverage": "vitest run --coverage" }, "devDependencies": { "@pinia/testing": "^0.1.7", "@types/can-autoplay": "^3.0.5", "@typescript-eslint/eslint-plugin": "^8.20.0", "@typescript-eslint/parser": "^8.20.0", "@vitest/coverage-v8": "^3.0.2", "@vue/test-utils": "^2.4.6", "eslint": "^8.57.1", "eslint-config-prettier": "^10.0.1", "eslint-plugin-import": "^2.31.0", "eslint-plugin-prettier": "^5.2.3", "eslint-plugin-vue": "^9.32.0", "jsdom": "^26.0.0", "less": "^4.2.1", "prettier": "^3.4.2", "vite-plugin-dynamic-import": "^1.6.0", "vitest": "^3.0.2", "vue-eslint-parser": "^9.4.3", "vue-tsc": "^2.2.0" }, "dependencies": { "@intlify/unplugin-vue-i18n": "^6.0.3", "@vitejs/plugin-vue": "^5.2.1", "can-autoplay": "^3.0.2", "chart.js": "^4.4.7", "date-fns": "^4.1.0", "dompurify": "^3.2.3", "eslint-config-airbnb-base": "^15.0.0", "marked": "^15.0.6", "normalize.css": "^8.0.1", "pinia": "^2.3.0", "toasters": "^2.3.1", "typescript": "^5.7.3", "vite": "^6.0.7", "vue": "^3.5.13", "vue-chartjs": "^5.3.2", "vue-content-loader": "^2.0.1", "vue-draggable-list": "^0.2.0", "vue-i18n": "^11.0.1", "vue-json-pretty": "^2.4.0", "vue-router": "^4.5.0", "vue-tippy": "^6.6.0" } }