{
	"name": "@modrinth/frontend",
	"private": true,
	"type": "module",
	"scripts": {
		"build": "NODE_OPTIONS=\"--max-old-space-size=8192\" nuxi build",
		"dev": "nuxi dev",
		"generate": "nuxi generate",
		"preview": "nuxi preview",
		"postinstall": "nuxi prepare",
		"lint": "eslint . && prettier --check .",
		"fix": "eslint . --fix && prettier --write .",
		"intl:extract": "formatjs extract \"src/{components,composables,layouts,middleware,modules,pages,plugins,utils}/**/*.{vue,ts,tsx,js,jsx,mts,cts,mjs,cjs}\" \"src/error.vue\" --ignore \"**/*.d.ts\" --ignore node_modules --out-file src/locales/en-US/index.json --format crowdin --preserve-whitespace",
		"cf-deploy": "pnpm run build && wrangler deploy --env preview",
		"cf-dev": "pnpm run build && wrangler dev --env preview",
		"cf-typegen": "wrangler types"
	},
	"devDependencies": {
		"@formatjs/cli": "^6.2.12",
		"@modrinth/tooling-config": "workspace:*",
		"@nuxtjs/i18n": "^9.0.0",
		"@types/dompurify": "^3.0.5",
		"@types/iso-3166-2": "^1.0.4",
		"@types/node": "^20.1.0",
		"autoprefixer": "^10.4.19",
		"glob": "^10.2.7",
		"nuxt": "^3.20.2",
		"postcss": "^8.4.39",
		"prettier-plugin-tailwindcss": "^0.6.5",
		"sass": "^1.58.0",
		"tailwindcss": "^3.4.4",
		"typescript": "^5.4.5",
		"vite-svg-loader": "^5.1.0",
		"vue-component-type-helpers": "^3.1.8",
		"vue-tsc": "^2.0.24",
		"wrangler": "^4.54.0"
	},
	"dependencies": {
		"@formatjs/intl-localematcher": "^0.5.4",
		"@intercom/messenger-js-sdk": "^0.0.14",
		"@ltd/j-toml": "^1.38.0",
		"@modrinth/api-client": "workspace:*",
		"@modrinth/assets": "workspace:*",
		"@modrinth/blog": "workspace:*",
		"@modrinth/moderation": "workspace:*",
		"@modrinth/ui": "workspace:*",
		"@modrinth/utils": "workspace:*",
		"@pinia/nuxt": "^0.11.3",
		"@tanstack/vue-query": "^5.90.7",
		"@types/three": "^0.172.0",
		"@vitejs/plugin-vue": "^6.0.3",
		"@vue-email/components": "^0.0.21",
		"@vue-email/render": "^0.0.9",
		"@vueuse/core": "^11.1.0",
		"ansi-to-html": "^0.7.2",
		"dayjs": "^1.11.7",
		"dompurify": "^3.1.7",
		"floating-vue": "^5.2.2",
		"fuse.js": "^6.6.2",
		"highlight.js": "^11.7.0",
		"intl-messageformat": "^10.7.7",
		"iso-3166-2": "1.0.0",
		"js-yaml": "^4.1.0",
		"jszip": "^3.10.1",
		"markdown-it": "14.1.0",
		"ace-builds": "^1.36.2",
		"pathe": "^1.1.2",
		"pinia": "^3.0.0",
		"pinia-plugin-persistedstate": "^4.4.1",
		"prettier": "^3.6.2",
		"qrcode.vue": "^3.4.0",
		"semver": "^7.5.4",
		"three": "^0.172.0",
		"vue-confetti-explosion": "^1.0.2",
		"vue-multiselect": "3.0.0-alpha.2",
		"vue-typed-virtual-list": "^1.0.10",
		"vue3-ace-editor": "^2.2.4",
		"vue3-apexcharts": "^1.5.2",
		"xss": "^1.0.14"
	},
	"web-types": "../../web-types.json",
	"prettier": "@modrinth/tooling-config/frontend.prettier.config.cjs"
}
