{ "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" }, "scripts": { "dev": "next dev -H 0.0.0.0", "build": "next build", "start": "next start", "lint": "next lint", "typecheck": "tsc", "postinstall": "prisma generate --no-hints" }, "dependencies": { "@date-fns/tz": "^1.2.0", "@date-fns/utc": "^2.1.0", "@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.19", "@next/mdx": "15.3.0-canary.19", "@next/third-parties": "15.3.0-canary.19", "@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", "date-fns": "^4.1.0", "fast-glob": "^3.3.3", "feed": "^4.2.2", "geist": "^1.3.1", "html-entities": "^2.5.3", "lucide-react": "0.483.0", "modern-normalize": "^3.0.1", "next": "15.3.0-canary.19", "obj-str": "^1.1.0", "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-schemaorg": "^2.0.0", "react-textarea-autosize": "^8.5.8", "react-timeago": "^8.0.0", "react-turnstile": "^1.1.4", "react-tweet": "^3.2.2", "rehype-mdx-import-media": "^1.2.0", "rehype-pretty-code": "^0.14.1", "rehype-slug": "^6.0.0", "rehype-unwrap-images": "^1.0.0", "remark-frontmatter": "^5.0.0", "remark-gfm": "^4.0.1", "remark-html": "^16.0.1", "remark-mdx-frontmatter": "^5.1.0", "remark-parse": "^11.0.0", "remark-smartypants": "^3.0.2", "resend": "^4.1.2", "shiki": "^3.2.1", "unified": "^11.0.5", "zod": "^3.24.2" }, "devDependencies": { "@eslint/eslintrc": "^3.3.1", "@eslint/js": "^9.23.0", "@jakejarvis/eslint-config": "^4.0.7", "@types/comma-number": "^2.1.2", "@types/mdx": "^2.0.13", "@types/node": "^22.13.11", "@types/prop-types": "^15.7.14", "@types/react": "^19.0.12", "@types/react-dom": "^19.0.4", "@types/react-is": "^19.0.0", "babel-plugin-react-compiler": "19.0.0-beta-3229e95-20250315", "cross-env": "^7.0.3", "eslint": "^9.23.0", "eslint-config-next": "15.3.0-canary.19", "eslint-config-prettier": "^10.1.1", "eslint-plugin-css-modules": "^2.12.0", "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-compiler": "19.0.0-beta-3229e95-20250315", "eslint-plugin-react-hooks": "^5.2.0", "lint-staged": "^15.5.0", "prettier": "^3.5.3", "prisma": "^6.5.0", "schema-dts": "^1.1.5", "simple-git-hooks": "^2.12.1", "stylelint": "^16.16.0", "stylelint-config-css-modules": "^4.4.0", "stylelint-config-recommended": "^15.0.0", "stylelint-config-standard": "^37.0.0", "typescript": "5.8.2" }, "optionalDependencies": { "sharp": "^0.33.5" }, "engines": { "node": ">=20.x" }, "packageManager": "pnpm@10.6.5+sha512.cdf928fca20832cd59ec53826492b7dc25dc524d4370b6b4adbf65803d32efaa6c1c88147c0ae4e8d579a6c9eec715757b50d4fa35eea179d868eada4ed043af", "cacheDirectories": [ "node_modules", ".next/cache" ], "simple-git-hooks": { "pre-commit": "pnpm exec lint-staged" }, "lint-staged": { "*.{js,jsx,ts,tsx,md,mdx}": [ "eslint" ], "*.css": [ "stylelint", "prettier --check" ] }, "pnpm": { "onlyBuiltDependencies": [ "@prisma/client", "@prisma/engines", "esbuild", "prisma", "sharp", "simple-git-hooks" ], "peerDependencyRules": { "allowedVersions": { "react": "^19", "react-dom": "^19" } } } }