Spaces:
Build error
Build error
| { | |
| "name": "shelf-webapp", | |
| "private": true, | |
| "sideEffects": false, | |
| "type": "module", | |
| "scripts": { | |
| "build": "NODE_ENV=production remix vite:build", | |
| "db:diff": "prisma migrate diff --from-url=${DATABASE_URL} --to-migrations=./app/database/migrations --shadow-database-url=${SHADOW_DATABASE_URL} --script > rollback.sql", | |
| "db:prepare-migration": "prisma generate && prisma migrate dev --create-only --skip-seed && tsx app/database/post-migration.ts", | |
| "db:generate-type": "prisma generate", | |
| "db:deploy": "prisma migrate deploy", | |
| "db:deploy-migration": "prisma migrate deploy && prisma generate", | |
| "db:deploy-migration:staging": "dotenv -e .env.staging -- prisma migrate deploy && prisma generate", | |
| "db:deploy-migration:production": "dotenv -e .env.production -- prisma migrate deploy && prisma generate", | |
| "dev": "vite --host", | |
| "production:dev": "dotenv -e .env.production -- vite --host", | |
| "staging:dev": "dotenv -e .env.staging -- vite --host", | |
| "format": "prettier --write .", | |
| "lint": "eslint --cache --cache-location ./node_modules/.cache/eslint .", | |
| "setup": "prisma generate && prisma migrate deploy", | |
| "reset:db": "prisma migrate reset", | |
| "reset:db:staging": "dotenv -e .env.staging -- prisma migrate reset", | |
| "start": "NODE_ENV=production node ./build/server/index.js", | |
| "start:ci": "dotenv -- npm run start", | |
| "test": "vitest", | |
| "test:cov": "vitest --coverage", | |
| "test:e2e:dev": "start-server-and-test dev http://localhost:3000 'npx playwright test --ui'", | |
| "test:e2e:run": "start-server-and-test dev http://localhost:3000 'npx playwright test'", | |
| "test:e2e:install": "npx playwright install --with-deps chromium", | |
| "pretest:e2e:run": "npm run build", | |
| "typecheck": "tsc -b", | |
| "validate": "run-p \"test -- --run\" lint typecheck test:e2e:run", | |
| "lint:fix": "npm run lint -- --fix", | |
| "format-code": "npm run prettier:fix & npm run lint:fix", | |
| "stripe:webhook": "stripe listen --forward-to localhost:3000/api/stripe-webhook", | |
| "prepare": "husky install", | |
| "precommit": "npm run db:generate-type && npm run lint:fix && npm run format && npm run typecheck" | |
| }, | |
| "overrides": { | |
| "cross-spawn": "~7.0.6" | |
| }, | |
| "dependencies": { | |
| "@fullcalendar/core": "^6.1.11", | |
| "@fullcalendar/daygrid": "^6.1.11", | |
| "@fullcalendar/list": "^6.1.11", | |
| "@fullcalendar/react": "^6.1.11", | |
| "@fullcalendar/timegrid": "^6.1.15", | |
| "@markdoc/markdoc": "^0.4.0", | |
| "@paralleldrive/cuid2": "^2.2.2", | |
| "@prisma/client": "^6.2.1", | |
| "@radix-ui/react-alert-dialog": "^1.0.5", | |
| "@radix-ui/react-collapsible": "^1.1.1", | |
| "@radix-ui/react-dropdown-menu": "2.0.6", | |
| "@radix-ui/react-hover-card": "^1.0.7", | |
| "@radix-ui/react-icons": "^1.3.0", | |
| "@radix-ui/react-popover": "^1.0.7", | |
| "@radix-ui/react-select": "2.0.0", | |
| "@radix-ui/react-separator": "^1.1.0", | |
| "@radix-ui/react-switch": "^1.0.3", | |
| "@radix-ui/react-tabs": "1.0.4", | |
| "@radix-ui/react-toast": "1.1.5", | |
| "@radix-ui/react-tooltip": "^1.0.7", | |
| "@react-email/components": "0.0.14", | |
| "@remix-run/node": "2.13.1", | |
| "@remix-run/react": "2.13.1", | |
| "@remix-run/serve": "2.13.1", | |
| "@sentry/remix": "^8.53.0", | |
| "@stripe/react-stripe-js": "^2.5.0", | |
| "@stripe/stripe-js": "^3.0.2", | |
| "@supabase/supabase-js": "^2.43.4", | |
| "@tremor/react": "^3.14.0", | |
| "@zxing/library": "^0.20.0", | |
| "changedpi": "^1.0.4", | |
| "chardet": "^2.0.0", | |
| "class-variance-authority": "^0.7.0", | |
| "cookie": "^0.7.0", | |
| "crisp-sdk-web": "^1.0.21", | |
| "csv-parse": "^5.5.3", | |
| "date-fns": "^3.3.1", | |
| "date-fns-tz": "^3.2.0", | |
| "detectrtc": "^1.4.1", | |
| "framer-motion": "^11.0.5", | |
| "html-to-image": "1.11.11", | |
| "iconv-lite": "^0.6.3", | |
| "input-otp": "^1.4.2", | |
| "intl-parse-accept-language": "^1.0.0", | |
| "isbot": "^4.4.0", | |
| "jotai": "^2.7.1", | |
| "jsonwebtoken": "^9.0.2", | |
| "jszip": "^3.10.1", | |
| "lodash": "^4.17.21", | |
| "lottie-react": "^2.4.0", | |
| "lru-cache": "^11.0.2", | |
| "lucide-react": "^0.462.0", | |
| "luxon": "^3.4.4", | |
| "mapbox-gl": "^3.1.2", | |
| "maplibre-gl": "^4.0.0", | |
| "nodemailer": "^6.9.9", | |
| "nprogress": "^0.2.0", | |
| "path-to-regexp": "^6.3.0", | |
| "pg-boss": "^9.0.3", | |
| "pino": "^8.19.0", | |
| "pino-pretty": "^10.3.1", | |
| "qrcode-generator": "^1.4.4", | |
| "react": "18.2.0", | |
| "react-day-picker": "^8.10.0", | |
| "react-dom": "18.2.0", | |
| "react-dropzone": "^14.2.3", | |
| "react-map-gl": "^7.1.7", | |
| "react-microsoft-clarity": "^1.2.0", | |
| "react-router-hono-server": "^1.0.0", | |
| "react-tag-autocomplete": "^7.1.0", | |
| "react-to-print": "^2.15.1", | |
| "react-webcam": "^7.2.0", | |
| "react-zorm": "^0.9.0", | |
| "remix-utils": "^7.5.0", | |
| "sharp": "^0.33.2", | |
| "stripe": "^14.16.0", | |
| "swiper": "^11.0.6", | |
| "tailwind-merge": "^2.2.1", | |
| "tailwindcss-animate": "^1.0.7", | |
| "tiny-invariant": "^1.3.1", | |
| "ua-parser-js": "^1.0.37", | |
| "zod": "^3.22.4", | |
| "zxing-wasm": "^2.0.1" | |
| }, | |
| "devDependencies": { | |
| "@faker-js/faker": "^8.4.1", | |
| "@playwright/test": "^1.41.2", | |
| "@remix-run/dev": "2.13.1", | |
| "@remix-run/eslint-config": "2.13.1", | |
| "@tailwindcss/aspect-ratio": "^0.4.2", | |
| "@tailwindcss/forms": "^0.5.7", | |
| "@tailwindcss/typography": "^0.5.10", | |
| "@testing-library/jest-dom": "^6.4.2", | |
| "@testing-library/react": "^14.2.1", | |
| "@testing-library/user-event": "^14.5.2", | |
| "@types/js-cookie": "^3.0.6", | |
| "@types/jsonwebtoken": "^9.0.5", | |
| "@types/lodash": "^4.17.9", | |
| "@types/luxon": "^3.4.2", | |
| "@types/nodemailer": "^6.4.14", | |
| "@types/nprogress": "^0.2.3", | |
| "@types/react": "^18.2.55", | |
| "@types/react-dom": "^18.2.19", | |
| "@types/ua-parser-js": "^0.7.39", | |
| "@vitejs/plugin-react": "^4.2.1", | |
| "@vitest/coverage-v8": "^2.1.9", | |
| "autoprefixer": "^10.4.19", | |
| "cross-env": "^7.0.3", | |
| "dotenv-cli": "^7.3.0", | |
| "eslint": "^8.56.0", | |
| "eslint-config-prettier": "^9.1.0", | |
| "eslint-plugin-no-restricted-imports": "^0.0.0", | |
| "eslint-plugin-tailwindcss": "^3.14.2", | |
| "happy-dom": "^15.11.0", | |
| "husky": "^9.0.11", | |
| "msw": "^1.2.0", | |
| "nodemailer-mock": "^2.0.4", | |
| "npm-run-all": "^4.1.5", | |
| "postcss": "^8.4.38", | |
| "prettier": "3.0.3", | |
| "prettier-plugin-tailwindcss": "^0.5.11", | |
| "prisma": "^6.2.1", | |
| "remix-flat-routes": "^0.6.4", | |
| "start-server-and-test": "^2.0.3", | |
| "tailwind-scrollbar": "^3.1.0", | |
| "tailwindcss": "^3.4.1", | |
| "tsconfig-paths": "^4.2.0", | |
| "tsx": "^4.7.1", | |
| "typescript": "^5.1.0", | |
| "vite": "^5.4.14", | |
| "vite-plugin-cjs-interop": "^2.1.0", | |
| "vite-tsconfig-paths": "^4.3.2", | |
| "vitest": "^2.1.9" | |
| }, | |
| "engines": { | |
| "node": ">=20" | |
| }, | |
| "prisma": { | |
| "schema": "app/database/schema.prisma" | |
| } | |
| } |