{ "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", "sideEffects": false, "scripts": { "dev": "next dev --turbopack -H 0.0.0.0", "build": "next build", "start": "next start", "lint": "next lint --no-cache", "typecheck": "tsc", "postinstall": "prisma generate" }, "dependencies": { "@giscus/react": "^3.1.0", "@libsql/client": "^0.8.1", "@novnc/novnc": "1.4.0", "@octokit/graphql": "^8.1.2", "@octokit/graphql-schema": "^15.25.0", "@prisma/adapter-libsql": "^6.2.1", "@prisma/client": "^6.2.1", "@react-spring/web": "^9.7.5", "@stitches/react": "1.3.1-1", "@vercel/analytics": "^1.4.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", "formik": "^2.4.6", "gray-matter": "^4.0.3", "next": "15.1.4", "next-mdx-remote": "^5.0.0", "next-seo": "^6.6.0", "nodemailer": "^6.9.16", "obj-str": "^1.1.0", "p-map": "^7.0.3", "p-memoize": "^7.1.1", "polished": "^4.3.1", "prop-types": "^15.8.1", "query-string": "^9.1.1", "react": "18.3.1", "react-dom": "18.3.1", "react-error-boundary": "^5.0.0", "react-frame-component": "^5.2.7", "react-icons": "~5.3.0", "react-innertext": "^1.1.5", "react-intersection-observer": "^9.15.0", "react-is": "18.3.1", "react-player": "^2.16.0", "react-textarea-autosize": "^8.5.7", "react-turnstile": "^1.1.4", "react-tweet": "^3.2.1", "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.0", "remark-parse": "^11.0.0", "remark-rehype": "^11.1.1", "remark-smartypants": "^3.0.2", "sitemap": "^8.0.0", "stitches-normalize": "^3.0.1", "strip-comments": "^2.0.1", "swr": "^2.3.0", "trim-lines": "^3.0.1", "unified": "^11.0.5" }, "devDependencies": { "@eslint/eslintrc": "^3.2.0", "@eslint/js": "^9.18.0", "@jakejarvis/eslint-config": "~4.0.7", "@types/comma-number": "^2.1.2", "@types/node": "^22.10.7", "@types/nodemailer": "^6.4.17", "@types/novnc__novnc": "1.3.4", "@types/prop-types": "^15.7.14", "@types/react": "^18.3.12", "@types/react-dom": "^18.3.1", "@types/react-is": "^18.3.0", "@types/strip-comments": "^2.0.4", "cross-env": "^7.0.3", "eslint": "~9.18.0", "eslint-config-next": "15.1.4", "eslint-config-prettier": "~10.0.1", "eslint-plugin-mdx": "~3.1.5", "eslint-plugin-prettier": "~5.2.2", "lint-staged": "^15.4.0", "prettier": "^3.4.2", "prisma": "^6.2.1", "simple-git-hooks": "^2.11.1", "typescript": "^5.7.3", "typescript-eslint": "^8.20.0" }, "optionalDependencies": { "sharp": "^0.33.5" }, "engines": { "node": ">=20.x" }, "packageManager": "pnpm@9.15.4+sha512.b2dc20e2fc72b3e18848459b37359a32064663e5627a51e4c74b2c29dd8e8e0491483c3abb40789cfd578bf362fb6ba8261b05f0387d76792ed6e23ea3b1b6a0", "cacheDirectories": [ "node_modules", ".next/cache" ], "simple-git-hooks": { "pre-commit": "pnpm exec lint-staged" }, "lint-staged": { "*.{js,jsx,mjs,ts,tsx,md,mdx}": [ "eslint" ] } }