{
"name": "docs",
"private": true,
"sideEffects": false,
"type": "module",
"scripts": {
"build": "remix vite:build",
"clean": "rimraf build",
"dev": "remix vite:dev",
"generate:metadata": "tsx scripts/generate-metadata.ts",
"lint": "eslint .",
"lint:fix": "eslint . --fix",
"nuke": "echo \"☢️ Running nuke command...\n\";npm run clean && rimraf node_modules package-lock.json && npm i",
"postclone": "npm run nuke",
"start": "remix-serve ./build/server/index.js",
"test": "vitest",
"test:coverage": "vitest --coverage",
"test:e2e": "npm run test:e2e:dev --silent",
"test:e2e:dev": "playwright test --ui",
"test:e2e:install": "npx playwright install --with-deps chromium",
"pretest:e2e:run": "npm run build",
"test:e2e:run": "cross-env CI=true playwright test",
"typecheck": "tsc"
},
"dependencies": {
"@epic-web/invariant": "^1.0.0",
"@headlessui/react": "^1.7.18",
"@octokit/request": "^8.1.6",
"@remix-pwa/sw": "^2.2.0-dev.4",
"@remix-run/node": "^2.8.0",
"@remix-run/react": "^2.8.0",
"@remix-run/serve": "^2.8.0",
"@sindresorhus/slugify": "^2.2.1",
"@tsparticles/engine": "^3.3.0",
"@tsparticles/react": "^3.0.0",
"@tsparticles/slim": "^3.3.0",
"acorn": "^8.11.3",
"clsx": "^2.1.0",
"cookie": "^0.6.0",
"dotenv": "^16.4.1",
"framer-motion": "^11.0.8",
"isbot": "^3.6.8",
"json5": "^2.2.3",
"lucide-react": "^0.309.0",
"mdast-util-to-string": "^4.0.0",
"mdx-bundler": "^10.0.1",
"prismjs": "^1.29.0",
"react": "^18.2.0",
"react-dom": "^18.2.0",
"react-spring": "^9.7.3",
"redent": "^4.0.0",
"rehype-slug": "^6.0.0",
"remark-emoji": "^4.0.1",
"remark-gfm": "^4.0.0",
"remix-client-cache": "^1.0.1",
"remix-development-tools": "^4.0.7",
"tailwind-merge": "^2.2.1",
"unist-util-filter": "^5.0.1",
"unist-util-visit": "^5.0.0",
"zod": "^3.22.4"
},
"devDependencies": {
"@playwright/test": "^1.41.1",
"@remix-pwa/dev": "^2.1.0-dev.7",
"@remix-run/dev": "^2.8.0",
"@remix-run/eslint-config": "^2.8.0",
"@tailwindcss/typography": "0.5.9",
"@types/prismjs": "^1.26.3",
"@types/react": "^18.2.20",
"@types/react-dom": "^18.2.7",
"@typescript-eslint/parser": "^6.17.0",
"@vitejs/plugin-react": "^4.2.1",
"@vitest/coverage-v8": "^1.2.1",
"autoprefixer": "^10.4.16",
"cross-env": "^7.0.3",
"eslint": "^8.38.0",
"eslint-config-prettier": "^9.1.0",
"eslint-config-standard": "^17.1.0",
"eslint-import-resolver-typescript": "^3.6.1",
"eslint-plugin-disable": "^2.0.3",
"eslint-plugin-import": "^2.29.1",
"eslint-plugin-jsx-a11y": "^6.7.1",
"eslint-plugin-node": "^11.1.0",
"eslint-plugin-prettier": "^5.1.2",
"eslint-plugin-react": "^7.33.2",
"eslint-plugin-react-hooks": "^4.6.0",
"eslint-plugin-simple-import-sort": "^10.0.0",
"eslint-plugin-sort-destructure-keys": "^1.5.0",
"gray-matter": "^4.0.3",
"jsdom": "^24.0.0",
"prettier": "^3.1.1",
"prettier-plugin-tailwindcss": "^0.5.10",
"rimraf": "^5.0.5",
"tailwindcss": "^3.4.0",
"tsx": "^4.7.0",
"typescript": "^5.1.6",
"vite": "^5.0.0",
"vite-tsconfig-paths": "^4.2.1",
"vitest": "^1.2.1"
},
"engines": {
"node": ">=18.0.0"
}
}