1{
2 "name": "snapme",
3 "version": "0.1.0",
4 "private": true,
5 "description": "Browser photobooth: camera, poses, strip decoration, download or print. Gesture Snap, Strip Estafet, and Strip Hidup with QR.",
6 "license": "MIT",
7 "author": "Ikhsan Dyy <https://github.com/ikhsanddy>",
8 "homepage": "https://github.com/ikhsanddy/snapme#readme",
9 "repository": {
10 "type": "git",
11 "url": "git+https://github.com/ikhsanddy/snapme.git"
12 },
13 "bugs": {
14 "url": "https://github.com/ikhsanddy/snapme/issues"
15 },
16 "keywords": [
17 "photobooth",
18 "photo-strip",
19 "nextjs",
20 "mediapipe",
21 "gesture-recognition",
22 "konva",
23 "webcam",
24 "privacy-first"
25 ],
26 "engines": {
27 "node": ">=20"
28 },
29 "scripts": {
30 "dev": "next dev",
31 "build": "next build",
32 "postinstall": "node scripts/copy-mediapipe-wasm.mjs",
33 "brand:icons": "node scripts/render-brand-icons.mjs",
34 "lint": "eslint",
35 "typegen": "next typegen",
36 "typecheck": "next typegen && tsc --noEmit",
37 "test": "vitest run"
38 },
39 "dependencies": {
40 "@mediapipe/tasks-vision": "^1.1.1",
41 "@phosphor-icons/react": "^2.1.10",
42 "class-variance-authority": "^0.7.1",
43 "cn": "^0.5.0",
44 "embla-carousel-react": "^8.6.0",
45 "idb": "^8.0.4",
46 "konva": "^10.9.0",
47 "motion": "^14.4.0",
48 "nanoid": "^6.0.2",
49 "next": "16.4.3",
50 "qrcode": "^1.5.4",
51 "radix-ui": "^1.8.1",
52 "react": "19.3.1",
53 "react-dom": "19.3.1",
54 "react-konva": "^19.3.2",
55 "react-webcam": "^7.2.0",
56 "shadcn": "^4.22.1",
57 "sonner": "^2.0.8",
58 "tw-animate-css": "^1.4.0",
59 "vaul": "^1.1.2",
60 "zod": "^4.6.7",
61 "zustand": "^5.0.15"
62 },
63 "devDependencies": {
64 "@axe-core/playwright": "^4.14.0",
65 "@playwright/test": "^1.64.1",
66 "@tailwindcss/turbopack": "^4",
67 "@testing-library/react": "^16.3.3",
68 "@types/node": "^26.6.5",
69 "@types/qrcode": "^1.5.6",
70 "@types/react": "^19",
71 "@types/react-dom": "^19",
72 "eslint": "^9",
73 "eslint-config-next": "16.4.3",
74 "jsdom": "^30.1.3",
75 "sharp": "^0.35.5",
76 "tailwindcss": "^4",
77 "typescript": "^5",
78 "vitest": "^5.0.5"
79 }
80}
81