{ "private": true, "name": "sendou.ink", "version": "3.0.0", "scripts": { "deploy": "npm install && npm run migration:apply:prod && npm run build", "build": "cross-env NODE_ENV=production remix build", "dev": "cross-env NODE_ENV=development remix build && run-p dev:*", "dev:remix": "cross-env NODE_ENV=development remix watch", "dev:node": "cross-env NODE_ENV=development nodemon ./build/index.js --watch ./build/index.js", "postinstall": "remix setup node", "gen": "npx prisma generate", "start": "cross-env NODE_ENV=production node ./build/index.js", "migration:create": "npx prisma migrate dev --create-only", "migration:apply:dev": "npx prisma migrate dev", "migration:apply:prod": "npx prisma migrate deploy", "seed": "node --experimental-specifier-resolution=node --loader ts-node/esm -r tsconfig-paths/register prisma/seed", "seed:reset": "npx prisma migrate reset --force --skip-generate", "lint:ts": "eslint . --ext .ts,.tsx", "lint:styles": "stylelint \"app/styles/**/*.css\"", "lsf": "npm run lint:styles -- --fix", "prettier:check": "prettier --check .", "typecheck": "tsc --noEmit", "cy:open": "npx cypress open", "cy:run": "npx cypress run", "test:unit": "uvu -r tsm -r tsconfig-paths/register -i cypress", "tests": "npm run lint:styles && npm run lint:ts && npm run prettier:check && npm run typecheck" }, "dependencies": { "@dnd-kit/core": "^5.0.1", "@dnd-kit/sortable": "^6.0.0", "@dnd-kit/utilities": "^3.1.0", "@headlessui/react": "^1.5.0", "@prisma/client": "^3.10.0", "@remix-run/express": "^1.2.3", "@remix-run/react": "^1.2.3", "clsx": "^1.1.1", "compression": "^1.7.4", "cookie-parser": "^1.4.6", "cookie-session": "^2.0.0", "cross-env": "^7.0.3", "express": "^4.17.3", "just-clone": "^5.0.1", "just-shuffle": "^4.0.1", "morgan": "^1.10.0", "npm-run-all": "^4.1.5", "passport": "^0.5.2", "passport-discord": "^0.1.4", "react": "^17.0.2", "react-dom": "^17.0.2", "remix": "^1.2.3", "tiny-invariant": "^1.2.0", "ts-trueskill": "^3.3.0", "uuid": "^8.3.2", "zod": "^3.13.2" }, "devDependencies": { "@remix-run/dev": "^1.2.3", "@types/compression": "^1.7.2", "@types/cookie-parser": "^1.4.2", "@types/cookie-session": "^2.0.44", "@types/express": "^4.17.13", "@types/morgan": "^1.9.3", "@types/passport": "^1.0.7", "@types/passport-discord": "^0.1.5", "@types/react": "^17.0.39", "@types/react-dom": "^17.0.13", "@types/uuid": "^8.3.4", "@typescript-eslint/eslint-plugin": "^5.13.0", "@typescript-eslint/parser": "^5.13.0", "cypress": "^9.5.1", "eslint": "^8.10.0", "eslint-plugin-react": "^7.29.2", "nodemon": "^2.0.15", "prettier": "2.5.1", "prisma": "^3.10.0", "stylelint": "^14.5.3", "stylelint-config-idiomatic-order": "^8.1.0", "stylelint-config-prettier": "^9.0.3", "stylelint-config-standard": "^25.0.0", "stylelint-order": "^5.0.0", "ts-node": "^10.6.0", "tsconfig-paths": "^3.12.0", "tsm": "^2.2.1", "typescript": "^4.6.2", "uvu": "^0.5.3" }, "engines": { "node": ">=16", "npm": ">=8" }, "sideEffects": false, "prisma": { "seed": "node --experimental-specifier-resolution=node --loader ts-node/esm prisma/seed" } }