Files
website/package.json
2026-09-06 11:17:54 +02:00

68 lines
2.1 KiB
JSON

{
"name": "mkstack",
"private": true,
"version": "0.0.0",
"type": "module",
"scripts": {
"dev": "npm i --silent && vite",
"build": "npm i --silent && vite build -l error && cp dist/index.html dist/404.html && echo 'Project built successfully!'",
"test": "npm i --silent && tsc --noEmit && eslint --cache && vitest run --reporter=dot --silent && vite build -l error && cp dist/index.html dist/404.html && echo 'All tests passed!'"
},
"dependencies": {
"@fontsource-variable/inter": "^5.3.0",
"@nostrify/nostrify": "^0.55.1",
"@nostrify/react": "^0.6.8",
"@radix-ui/react-toast": "^1.2.1",
"@tanstack/react-query": "^5.100.5",
"@unhead/react": "^3.1.0",
"buffer": "^6.0.3",
"class-variance-authority": "^0.7.1",
"clsx": "^2.1.1",
"cmdk": "^1.1.1",
"embla-carousel-react": "^8.6.0",
"input-otp": "^1.4.2",
"lucide-react": "^1.11.0",
"nostr-tools": "^2.23.3",
"qrcode": "^1.5.4",
"radix-ui": "^1.4.3",
"react": "^19.2.5",
"react-day-picker": "^9.14.0",
"react-dom": "^19.2.5",
"react-hook-form": "^7.74.0",
"react-markdown": "^10.1.0",
"react-resizable-panels": "^4.10.0",
"react-router-dom": "^7.14.2",
"recharts": "^3.8.1",
"rehype-sanitize": "^6.0.0",
"remark-gfm": "^4.0.1",
"tailwind-merge": "^3.5.0",
"tw-animate-css": "^1.2.0",
"unhead": "^3.1.0",
"vaul": "^1.1.2",
"zod": "^4.3.6"
},
"devDependencies": {
"@eslint/js": "^10.0.1",
"@html-eslint/eslint-plugin": "^0.59.0",
"@html-eslint/parser": "^0.59.0",
"@tailwindcss/vite": "^4.2.4",
"@testing-library/jest-dom": "^6.9.1",
"@testing-library/react": "^16.3.2",
"@types/node": "^24.12.2",
"@types/qrcode": "^1.5.5",
"@types/react": "^19.2.14",
"@types/react-dom": "^19.2.3",
"@vitejs/plugin-react": "^6.0.1",
"eslint": "^10.2.1",
"eslint-plugin-react-hooks": "^7.1.1",
"eslint-plugin-react-refresh": "^0.5.2",
"globals": "^17.5.0",
"jsdom": "^29.1.0",
"tailwindcss": "^4.2.4",
"typescript": "^6.0.3",
"typescript-eslint": "^8.59.0",
"vite": "^8.0.10",
"vitest": "^4.1.5"
}
}