{
	"main": "./dist/classicy.umd.js",
	"module": "./dist/classicy.es.js",
	"types": "./dist/types/src/index.d.ts",
	"name": "classicy",
	"version": "0.79.0",
	"release": "Buster's Revenge",
	"repository": {
		"type": "git",
		"url": "https://github.com/robbiebyrd/classicy"
	},
	"type": "module",
	"packageManager": "pnpm@10.26.0",
	"description": "A UI framework in React, replicating the user interface of Classic MacOS 8 (called Platinum).",
	"keywords": [
		"react",
		"typescript",
		"nextjs",
		"platinum",
		"macos-classic",
		"typescript-react"
	],
	"author": "Robbie Byrd <me@robbiebyrd.com>",
	"license": "Unlicense",
	"scripts": {
		"generate-barrels": "barrelsby -c .ts-barrel.json",
		"dev": "pnpm build:source",
		"build": "pnpm build:audio && pnpm build:source",
		"build:source": "pnpm generate-barrels && tsc -b && vite build && pnpm verify:dist",
		"verify:dist": "node bin/check-dist-imports.mjs",
		"build:audio": "./bin/make_audio_sprites.sh",
		"build:watch": "concurrently --kill-others \"pnpm build:watchaudio\" \"pnpm build:watchsource\"",
		"build:watchaudio": "nodemon --watch \"resources/sounds/**\" --ext \"mp3,mp4,wav,aif,aiff,ogg,flac,m4a,ac3,json\" --exec \"pnpm build:audio\" --ignore \"example/**\" --ignore \"rt911/**\" ",
		"build:watchsource": "nodemon --watch \"src/**\" --watch \"assets/**\" --ext \"tsx,ts,json,css,scss,png,jpg,svg\" --exec \"tsc -b && vite build\" --ignore \"example/**\" --ignore \"rt911/**\" --ignore \"**/index.ts\" --ignore \"**/index\\ *.ts\" --ignore \"**/index\\ *.tsx\" ",
		"test": "vitest run",
		"test:watch": "vitest",
		"lint": "biome check .",
		"lint:fix": "biome check --write .",
		"preview": "pnpm --filter classicy-example dev",
		"preview:dist": "pnpm build && concurrently --kill-others \"pnpm build:watchsource\" \"pnpm --filter classicy-example dev\"",
		"prepare": "husky",
		"storybook": "pnpm --filter classicy-storybook dev",
		"build:storybook": "pnpm --filter classicy-storybook build"
	},
	"lint-staged": {
		"**/*.{js,jsx,ts,tsx,json,css,scss}": "biome check --write --no-errors-on-unmatched"
	},
	"files": [
		"dist",
		"docs/AGENT-REFERENCE.md",
		"src/SystemFolder/ControlPanels/AppearanceManager/styles"
	],
	"sideEffects": [
		"**/*.css",
		"**/*.scss",
		"./src/SystemFolder/Extensions/ScreenSaver/savers/ClassicyScreenSaverBuiltIns.tsx"
	],
	"style": "./dist/classicy.css",
	"exports": {
		".": {
			"types": "./dist/types/src/index.d.ts",
			"import": "./dist/classicy.es.js",
			"require": "./dist/classicy.umd.js"
		},
		"./dist/classicy.css": "./dist/classicy.css",
		"./dist/fonts.css": "./dist/fonts.css",
		"./dist/*": "./dist/*",
		"./scss/*": "./src/SystemFolder/ControlPanels/AppearanceManager/styles/*"
	},
	"dependencies": {
		"@analytics/google-tag-manager": "^0.6.0",
		"@noble/hashes": "^2.2.0",
		"@plussub/srt-vtt-parser": "^2.0.5",
		"analytics": "^0.8.19",
		"classnames": "^2.5.1",
		"he": "^1.2.0",
		"howler": "^2.2.4",
		"react-json-tree": "^0.20.0",
		"screenfull": "^6.0.2",
		"use-analytics": "^1.1.0",
		"zod": "^4.4.3"
	},
	"peerDependencies": {
		"@tanstack/react-table": "^8.21.3",
		"immer": "^11.1.8",
		"react": "^18.0.0 || ^19.0.0",
		"react-dom": "^18.0.0 || ^19.0.0",
		"react-player": "^3.4.0",
		"zustand": "^5.0.14"
	},
	"devDependencies": {
		"@analytics/google-analytics": "^1.1.0",
		"@babel/core": "^7.29.7",
		"@babel/preset-env": "^7.29.7",
		"@babel/preset-react": "^7.29.7",
		"@biomejs/biome": "^2.5.0",
		"@eslint/js": "^9.39.4",
		"@ffmpeg-installer/ffmpeg": "^1.1.0",
		"@mdxeditor/editor": "^3.55.0",
		"@tanstack/react-table": "^8.21.3",
		"@testing-library/dom": "^10.4.1",
		"@testing-library/jest-dom": "^6.9.1",
		"@testing-library/react": "^16.3.2",
		"@testing-library/user-event": "^14.6.1",
		"@types/he": "^1.2.3",
		"@types/howler": "^2.2.13",
		"@types/node": "^24.13.2",
		"@types/react": "^19.2.17",
		"@types/react-dom": "^19.2.3",
		"@types/use-analytics": "^0.0.3",
		"@vitejs/plugin-react": "^5.2.0",
		"barrelsby": "^2.8.1",
		"concurrently": "^9.2.3",
		"eslint": "^9.39.4",
		"eslint-plugin-react-hooks": "^7.1.1",
		"eslint-plugin-react-refresh": "^0.5.3",
		"globals": "^17.6.0",
		"husky": "^9.1.7",
		"immer": "^11.1.8",
		"jsdom": "^29.1.1",
		"lint-staged": "^17.0.7",
		"nodemon": "^3.1.14",
		"pdfjs-dist": "^6.1.200",
		"react": "^19.2.7",
		"react-dom": "^19.2.7",
		"react-player": "^3.4.0",
		"sass": "^1.101.0",
		"ts-node": "^10.9.2",
		"tsc-alias": "^1.8.17",
		"typescript": "~5.9.3",
		"typescript-eslint": "^8.61.1",
		"vite": "^7.3.5",
		"vite-plugin-dts": "^4.5.4",
		"vite-plugin-image-tools": "^3.1.3",
		"vite-plugin-react-rich-svg": "^1.3.0",
		"vitest": "^4.1.9",
		"zustand": "^5.0.14"
	},
	"volta": {
		"node": "24.12.0"
	},
	"pnpm": {
		"onlyBuiltDependencies": [
			"@ffmpeg-installer/linux-x64",
			"@parcel/watcher",
			"esbuild",
			"sharp"
		],
		"overrides": {
			"js-yaml@>=4.0.0 <4.3.1": "^4.3.1",
			"fast-uri@>=3.0.0 <3.1.5": "^3.1.5",
			"postcss@<8.5.23": "^8.5.23",
			"undici@>=7.0.0 <7.29.0": "^7.29.0",
			"brace-expansion@<1.1.18": "^1.1.18",
			"brace-expansion@>=2.0.0 <2.1.4": "^2.1.4",
			"brace-expansion@>=3.0.0 <5.0.9": "^5.0.9",
			"shell-quote@<1.9.0": "^1.9.0",
			"immutable@>=5.0.0-beta.1 <5.1.8": "^5.1.8",
			"esbuild@>=0.27.3 <0.28.1": "^0.28.1",
			"svgo@>=3.0.0 <3.3.4": "^3.3.4",
			"svgo@>=4.0.0 <4.0.2": "^4.0.2",
			"nanoid@<3.3.18": "^3.3.18",
			"request": "npm:@cypress/request@^3",
			"sharp@<0.35.0": "^0.35.0",
			"uuid@<11.1.1": "^11.1.1",
			"tough-cookie@<4.1.3": "^4.1.3",
			"form-data@<2.5.6": "^2.5.6",
			"qs@<6.15.2": "^6.15.2"
		}
	}
}
