{ "name": "jarv.is", "private": true, "license": "(MIT AND CC-BY-4.0)", "homepage": "https://jarv.is/", "repository": "jakejarvis/jarv.is", "author": { "name": "Jake Jarvis", "email": "jake@jarv.is", "url": "https://github.com/jakejarvis" }, "type": "module", "scripts": { "dev": "next dev -H 0.0.0.0", "build": "next build", "start": "next start", "lint": "next lint --no-cache", "typecheck": "tsc", "postinstall": "prisma generate --no-hints" }, "dependencies": { "@emotion/hash": "^0.9.2", "@giscus/react": "^3.1.0", "@mdx-js/loader": "^3.1.0", "@mdx-js/react": "^3.1.0", "@next/bundle-analyzer": "15.3.0-canary.0", "@next/mdx": "15.3.0-canary.0", "@next/third-parties": "15.3.0-canary.0", "@octokit/graphql": "^8.2.1", "@octokit/graphql-schema": "^15.26.0", "@prisma/client": "^6.5.0", "clsx": "^2.1.1", "comma-number": "^2.1.0", "copy-to-clipboard": "^3.3.3", "dayjs": "^1.11.13", "fast-glob": "^3.3.3", "feed": "^4.2.2", "lucide-react": "0.479.0", "modern-normalize": "^3.0.1", "next": "15.3.0-canary.0", "obj-str": "^1.1.0", "p-map": "^7.0.3", "p-memoize": "^7.1.1", "polished": "^4.3.1", "prop-types": "^15.8.1", "react": "19.0.0", "react-dom": "19.0.0", "react-error-boundary": "^5.0.0", "react-innertext": "^1.1.5", "react-is": "19.0.0", "react-textarea-autosize": "^8.5.7", "react-turnstile": "^1.1.4", "react-tweet": "^3.2.2", "rehype-mdx-import-media": "^1.2.0", "rehype-prism-plus": "^2.0.0", "rehype-sanitize": "^6.0.0", "rehype-slug": "^6.0.0", "rehype-stringify": "^10.0.1", "rehype-unwrap-images": "^1.0.0", "remark-gfm": "^4.0.1", "remark-parse": "^11.0.0", "remark-rehype": "^11.1.1", "remark-smartypants": "^3.0.2", "resend": "^4.1.2", "unified": "^11.0.5", "zod": "^3.24.2" }, "devDependencies": { "@eslint/eslintrc": "^3.3.0", "@eslint/js": "^9.22.0", "@jakejarvis/eslint-config": "^4.0.7", "@types/comma-number": "^2.1.2", "@types/mdx": "^2.0.13", "@types/node": "^22.13.10", "@types/prop-types": "^15.7.14", "@types/react": "^19.0.10", "@types/react-dom": "^19.0.4", "@types/react-is": "^19.0.0", "cross-env": "^7.0.3", "eslint": "^9.22.0", "eslint-config-next": "15.3.0-canary.0", "eslint-config-prettier": "^10.1.1", "eslint-plugin-import": "^2.31.0", "eslint-plugin-jsx-a11y": "^6.10.2", "eslint-plugin-mdx": "^3.2.0", "eslint-plugin-prettier": "^5.2.3", "eslint-plugin-react": "^7.37.4", "eslint-plugin-react-hooks": "^5.2.0", "lint-staged": "^15.4.3", "prettier": "^3.5.3", "prisma": "^6.5.0", "schema-dts": "^1.1.5", "simple-git-hooks": "^2.11.1", "typescript": "5.8.2" }, "optionalDependencies": { "sharp": "^0.33.5" }, "engines": { "node": ">=20.x" }, "packageManager": "pnpm@10.6.2+sha512.47870716bea1572b53df34ad8647b42962bc790ce2bf4562ba0f643237d7302a3d6a8ecef9e4bdfc01d23af1969aa90485d4cebb0b9638fa5ef1daef656f6c1b", "cacheDirectories": [ "node_modules", ".next/cache" ], "simple-git-hooks": { "pre-commit": "pnpm exec lint-staged" }, "lint-staged": { "*.{js,jsx,ts,tsx,md,mdx}": [ "eslint" ], "*.css": [ "prettier --check" ] }, "pnpm": { "onlyBuiltDependencies": [ "@prisma/client", "@prisma/engines", "esbuild", "prisma", "sharp", "simple-git-hooks" ], "peerDependencyRules": { "allowedVersions": { "react": "^19", "react-dom": "^19" } } } }