{ "name": "voyager", "description": "A progressive webapp Lemmy client", "private": true, "version": "2.17.0", "type": "module", "packageManager": "pnpm@9.6.0+sha512.38dc6fba8dba35b39340b9700112c2fe1e12f10b17134715a4aa98ccf7bb035e76fd981cf0bb384dfa98f8d6af5481c2bef2f4266a24bfa20c34eb7147ce0b5e", "scripts": { "dev": "vite", "build": "./build.sh", "preview": "vite preview", "test": "vitest", "test:e2e": "playwright test", "test:typecheck": "tsc", "lint": "eslint src --max-warnings=0", "lint:formatting": "prettier --check .", "generate:splash:dark": "pwa-asset-generator --type png --index index.html --dark-mode --splash-only --path-override '/splash' public/splash.html public/splash/ && prettier -w index.html", "generate:splash:light": "pwa-asset-generator --type png --index index.html --splash-only --path-override '/splash' public/splash.html public/splash/ && prettier -w index.html", "generate:splash": "pnpm generate:splash:dark && pnpm generate:splash:light", "capacitor:copy:before": "rm -rf $CAPACITOR_WEB_DIR/splash && rm -rf $CAPACITOR_WEB_DIR/screenshots", "capacitor:sync:before": "rm dist/pro-manifest.json dist/live-update-manifest.json", "upgrade:packageManager": "corepack use pnpm@latest" }, "pnpm": { "overrides": { "@ionic/core": "npm:voyager-ionic-core@8.2.6" }, "patchedDependencies": { "@capacitor/browser@6.0.2": "patches/@capacitor__browser@6.0.2.patch", "@capacitor/haptics@6.0.1": "patches/@capacitor__haptics@6.0.1.patch" } }, "dependencies": { "@aeharding/remark-lemmy-spoiler": "^2.0.0", "@capacitor-community/app-icon": "^5.0.0", "@capacitor/android": "^6.1.2", "@capacitor/app": "^6.0.1", "@capacitor/assets": "^3.0.5", "@capacitor/browser": "^6.0.2", "@capacitor/core": "^6.1.2", "@capacitor/filesystem": "^6.0.1", "@capacitor/haptics": "^6.0.1", "@capacitor/ios": "^6.1.2", "@capacitor/keyboard": "^6.0.2", "@capacitor/network": "^6.0.2", "@capacitor/share": "^6.0.2", "@capacitor/status-bar": "^6.0.1", "@github/markdown-toolbar-element": "^2.2.3", "@ionic/core": "npm:voyager-ionic-core@8.2.6", "@ionic/react": "8.2.6", "@ionic/react-router": "8.2.6", "@linaria/core": "^6.2.0", "@linaria/react": "^6.2.1", "@reduxjs/toolkit": "^2.2.7", "capacitor-android-nav-mode": "^1.0.0", "capacitor-application-context": "^1.0.0", "capacitor-biometric-lock": "^1.0.0", "capacitor-clear-cache": "^1.0.1", "capacitor-launch-native": "^1.0.0", "capacitor-plugin-safe-area": "^3.0.3", "capacitor-set-version": "^2.2.0", "capacitor-stash-media": "^2.0.1", "capacitor-tips": "^1.0.0", "compare-versions": "^6.1.1", "date-fns": "^3.6.0", "dexie": "^4.0.8", "dexie-export-import": "^4.1.2", "dexie-react-hooks": "^1.1.7", "history": "^4.10.1", "ionicons": "^7.4.0", "lemmy-js-client": "0.19.4", "lodash": "^4.17.21", "mdast-util-gfm-autolink-literal-lemmy": "^3.0.0", "mdast-util-gfm-strikethrough": "^2.0.0", "mdast-util-gfm-table": "^2.0.0", "micromark": "^4.0.0", "micromark-extension-gfm-strikethrough": "^2.1.0", "micromark-extension-gfm-table": "^2.1.0", "micromark-util-combine-extensions": "^2.0.0", "modern-screenshot": "^4.4.39", "photoswipe": "^5.4.4", "react": "^18.3.1", "react-animate-height": "^3.2.3", "react-dom": "^18.3.1", "react-error-boundary": "^4.0.13", "react-intersection-observer": "^9.13.0", "react-markdown": "^9.0.1", "react-merge-refs": "^2.1.1", "react-redux": "^9.1.2", "react-reverse-portal": "^2.1.2", "react-router": "^5.3.4", "react-router-dom": "^5.3.4", "react-textarea-autosize": "^8.5.3", "react-transition-state": "^2.1.1", "rehype-highlight": "^6.0.0", "rehype-parse": "^9.0.0", "rehype-remark": "^10.0.0", "remark-gfm": "^4.0.0", "remark-parse": "^11.0.0", "remark-stringify": "^11.0.0", "remark-supersub-lemmy": "^1.0.0", "ua-parser-js": "^1.0.38", "unified": "^11.0.5", "unist-util-visit": "^5.0.0", "use-long-press": "^3.2.0", "usehooks-ts": "^3.1.0", "uuid": "^10.0.0", "virtua": "^0.33.4", "workbox-window": "^7.1.0" }, "devDependencies": { "@babel/preset-react": "^7.24.7", "@babel/preset-typescript": "^7.24.7", "@capacitor/cli": "^6.1.2", "@eslint/compat": "^1.1.1", "@eslint/eslintrc": "^3.1.0", "@eslint/js": "^9.9.0", "@ionic/cli": "^7.2.0", "@playwright/test": "^1.46.0", "@testing-library/jest-dom": "^6.4.8", "@testing-library/react": "^16.0.0", "@testing-library/user-event": "^14.5.2", "@trapezedev/configure": "^7.0.10", "@types/history": "^4.7.11", "@types/jest": "^29.5.12", "@types/lodash": "^4.17.7", "@types/mdast": "^4.0.4", "@types/node": "^22.2.0", "@types/react": "^18.3.3", "@types/react-dom": "^18.3.0", "@types/react-router": "^5.1.20", "@types/react-router-dom": "^5.3.3", "@types/ua-parser-js": "^0.7.39", "@types/uuid": "^10.0.0", "@typescript-eslint/eslint-plugin": "^8.0.1", "@typescript-eslint/parser": "^8.0.1", "@vitejs/plugin-legacy": "^5.4.1", "@vitejs/plugin-react": "^4.3.1", "@wyw-in-js/babel-preset": "^0.5.4", "@wyw-in-js/vite": "^0.5.4", "eslint": "^9.9.0", "eslint-config-prettier": "^9.1.0", "eslint-plugin-prettier": "^5.2.1", "eslint-plugin-react": "^7.35.0", "eslint-plugin-react-hooks": "^4.6.2", "globals": "^15.9.0", "jsdom": "^24.1.1", "mdast-util-lemmy-spoiler": "^2.0.0", "prettier": "^3.3.3", "pwa-asset-generator": "^6.3.1", "release-it": "^17.6.0", "terser": "^5.31.5", "typescript": "^5.5.4", "vite": "^5.4.0", "vite-plugin-pwa": "^0.20.1", "vite-plugin-svgr": "^4.2.0", "vitest": "^2.0.5" } }