Canvas: Prettier

Change-Id: I620dde109df0f29f0c85c6fe150e347d2c32a03e
diff --git a/apps/canvas/front/package.json b/apps/canvas/front/package.json
index 6bfe3cb..646ef6b 100644
--- a/apps/canvas/front/package.json
+++ b/apps/canvas/front/package.json
@@ -1,65 +1,78 @@
 {
-  "name": "code",
-  "private": true,
-  "version": "0.0.0",
-  "type": "module",
-  "scripts": {
-    "dev": "vite --port=$DODO_PORT_WEB --host",
-    "build": "vite build",
-    "lint": "eslint .",
-    "preview": "vite preview --port=$DODO_PORT_WEB --host",
-    "watch": "watch 'npm run build' ."
-  },
-  "watch": {
-    "ignoreDirectoryPattern": "dist"
-  },
-  "dependencies": {
-    "@hookform/resolvers": "^3.9.1",
-    "@radix-ui/react-accordion": "^1.2.1",
-    "@radix-ui/react-checkbox": "^1.3.1",
-    "@radix-ui/react-collapsible": "^1.1.1",
-    "@radix-ui/react-dialog": "^1.1.2",
-    "@radix-ui/react-icons": "^1.3.1",
-    "@radix-ui/react-label": "^2.1.0",
-    "@radix-ui/react-popover": "^1.1.2",
-    "@radix-ui/react-scroll-area": "^1.2.0",
-    "@radix-ui/react-select": "^2.1.2",
-    "@radix-ui/react-separator": "^1.1.0",
-    "@radix-ui/react-slot": "^1.1.0",
-    "@radix-ui/react-tabs": "^1.1.1",
-    "@radix-ui/react-toast": "^1.2.13",
-    "@radix-ui/react-tooltip": "^1.1.4",
-    "@xyflow/react": "^12.3.3",
-    "class-variance-authority": "^0.7.0",
-    "clsx": "^2.1.1",
-    "lucide-react": "^0.454.0",
-    "react": "^18.3.1",
-    "react-dom": "^18.3.1",
-    "react-hook-form": "^7.53.1",
-    "react-icons": "^5.3.0",
-    "react-resizable-panels": "^2.1.6",
-    "tailwind-merge": "^2.5.4",
-    "tailwindcss-animate": "^1.0.7",
-    "uuid": "^11.0.2",
-    "zod": "^3.23.8",
-    "zustand": "^5.0.1"
-  },
-  "devDependencies": {
-    "@eslint/js": "^9.13.0",
-    "@types/node": "^22.8.4",
-    "@types/react": "^18.3.12",
-    "@types/react-dom": "^18.3.1",
-    "@vitejs/plugin-react": "^4.3.3",
-    "autoprefixer": "^10.4.20",
-    "eslint": "^9.13.0",
-    "eslint-plugin-react-hooks": "^5.0.0",
-    "eslint-plugin-react-refresh": "^0.4.14",
-    "globals": "^15.11.0",
-    "postcss": "^8.4.47",
-    "tailwindcss": "^3.4.14",
-    "typescript": "~5.6.2",
-    "typescript-eslint": "^8.11.0",
-    "vite": "^5.4.10",
-    "watch": "^1.0.2"
-  }
-}
+	"name": "code",
+	"private": true,
+	"version": "0.0.0",
+	"type": "module",
+	"scripts": {
+		"dev": "vite --port=$DODO_PORT_WEB --host",
+		"build": "vite build",
+		"format": "prettier --write src/**/*.{js,ts,jsx,tsx}",
+		"format-check": "prettier --check src/**/*.{js,ts,jsx,tsx}",
+		"lint": "eslint .",
+		"preview": "vite preview --port=$DODO_PORT_WEB --host",
+		"watch": "watch 'npm run build' ."
+	},
+	"watch": {
+		"ignoreDirectoryPattern": "dist"
+	},
+	"dependencies": {
+		"@hookform/resolvers": "^3.9.1",
+		"@radix-ui/react-accordion": "^1.2.1",
+		"@radix-ui/react-checkbox": "^1.3.1",
+		"@radix-ui/react-collapsible": "^1.1.1",
+		"@radix-ui/react-dialog": "^1.1.2",
+		"@radix-ui/react-icons": "^1.3.1",
+		"@radix-ui/react-label": "^2.1.0",
+		"@radix-ui/react-popover": "^1.1.2",
+		"@radix-ui/react-scroll-area": "^1.2.0",
+		"@radix-ui/react-select": "^2.1.2",
+		"@radix-ui/react-separator": "^1.1.0",
+		"@radix-ui/react-slot": "^1.1.0",
+		"@radix-ui/react-tabs": "^1.1.1",
+		"@radix-ui/react-toast": "^1.2.13",
+		"@radix-ui/react-tooltip": "^1.1.4",
+		"@xyflow/react": "^12.3.3",
+		"class-variance-authority": "^0.7.0",
+		"clsx": "^2.1.1",
+		"lucide-react": "^0.454.0",
+		"react": "^18.3.1",
+		"react-dom": "^18.3.1",
+		"react-hook-form": "^7.53.1",
+		"react-icons": "^5.3.0",
+		"react-resizable-panels": "^2.1.6",
+		"tailwind-merge": "^2.5.4",
+		"tailwindcss-animate": "^1.0.7",
+		"uuid": "^11.0.2",
+		"zod": "^3.23.8",
+		"zustand": "^5.0.1"
+	},
+	"devDependencies": {
+		"@eslint/js": "^9.13.0",
+		"@types/node": "^22.8.4",
+		"@types/react": "^18.3.12",
+		"@types/react-dom": "^18.3.1",
+		"@vitejs/plugin-react": "^4.3.3",
+		"autoprefixer": "^10.4.20",
+		"eslint": "^9.13.0",
+		"eslint-plugin-react-hooks": "^5.0.0",
+		"eslint-plugin-react-refresh": "^0.4.14",
+		"globals": "^15.11.0",
+		"postcss": "^8.4.47",
+		"prettier": "3.5.3",
+		"tailwindcss": "^3.4.14",
+		"typescript": "~5.6.2",
+		"typescript-eslint": "^8.11.0",
+		"vite": "^5.4.10",
+		"watch": "^1.0.2"
+	},
+	"prettier": {
+		"printWidth": 120,
+		"tabWidth": 4,
+		"useTabs": true,
+		"singleQuote": false,
+		"trailingComma": "all",
+		"semi": true,
+		"bracketSpacing": true,
+		"arrowParens": "always"
+	}
+}
\ No newline at end of file