2023-01-29 21:07:23 +01:00
|
|
|
{
|
2025-10-17 23:30:35 +02:00
|
|
|
"name": "5chan",
|
2025-07-29 18:12:47 +02:00
|
|
|
"version": "0.5.3",
|
2025-12-17 13:11:45 +01:00
|
|
|
"description": "A serverless, adminless, decentralized 4chan alternative",
|
2024-06-20 15:35:28 +02:00
|
|
|
"type": "module",
|
2025-07-02 21:44:17 +02:00
|
|
|
"author": "Plebbit Labs",
|
2025-11-07 12:21:48 +01:00
|
|
|
"license": "GPL-2.0-only",
|
2023-01-29 21:07:23 +01:00
|
|
|
"private": true,
|
|
|
|
|
"dependencies": {
|
2025-05-13 14:19:28 +02:00
|
|
|
"@capacitor/app": "7.0.1",
|
2025-06-03 17:50:55 +02:00
|
|
|
"@capacitor/status-bar": "7.0.1",
|
|
|
|
|
"@capawesome/capacitor-android-edge-to-edge-support": "7.2.2",
|
2024-02-27 17:58:08 +01:00
|
|
|
"@floating-ui/react": "0.26.1",
|
2025-12-24 13:23:49 +01:00
|
|
|
"@plebbit/plebbit-react-hooks": "https://github.com/plebbit/plebbit-react-hooks.git#d17fa5d9b50f6e489f11d67f7e652c69be33cc6d",
|
2025-03-01 11:48:56 +01:00
|
|
|
"@react-spring/web": "9.7.5",
|
2023-04-24 19:42:49 +00:00
|
|
|
"@testing-library/jest-dom": "5.14.1",
|
2024-02-27 17:58:08 +01:00
|
|
|
"@testing-library/react": "13.0.0",
|
|
|
|
|
"@testing-library/user-event": "13.2.1",
|
|
|
|
|
"@types/jest": "29.5.5",
|
|
|
|
|
"@types/node": "20.8.2",
|
|
|
|
|
"@types/react": "18.2.25",
|
|
|
|
|
"@types/react-dom": "18.2.10",
|
2025-03-01 11:48:56 +01:00
|
|
|
"@use-gesture/react": "10.3.1",
|
2024-02-27 17:58:08 +01:00
|
|
|
"cross-env": "7.0.3",
|
2023-04-24 20:42:06 +00:00
|
|
|
"electron-context-menu": "3.3.0",
|
|
|
|
|
"electron-is-dev": "2.0.0",
|
2025-11-21 16:20:09 +01:00
|
|
|
"env-paths": "3.0.0",
|
2025-03-04 17:53:05 +01:00
|
|
|
"fs-extra": "11.3.0",
|
|
|
|
|
"http-proxy": "1.18.1",
|
2024-02-27 17:58:08 +01:00
|
|
|
"i18next": "23.5.1",
|
|
|
|
|
"i18next-browser-languagedetector": "7.1.0",
|
|
|
|
|
"i18next-http-backend": "2.2.2",
|
2023-12-13 00:00:11 +00:00
|
|
|
"json-stringify-pretty-compact": "4.0.0",
|
2023-04-24 19:42:49 +00:00
|
|
|
"lodash": "4.17.21",
|
2024-02-27 17:58:08 +01:00
|
|
|
"memoizee": "0.4.15",
|
|
|
|
|
"prettier": "3.0.3",
|
2025-12-05 17:52:31 +01:00
|
|
|
"react": "19.1.2",
|
|
|
|
|
"react-dom": "19.1.2",
|
2024-02-27 17:58:08 +01:00
|
|
|
"react-i18next": "13.2.2",
|
2023-04-24 19:42:49 +00:00
|
|
|
"react-markdown": "8.0.6",
|
2024-02-27 17:58:08 +01:00
|
|
|
"react-router-dom": "6.16.0",
|
2024-07-02 13:32:50 +02:00
|
|
|
"react-router-hash-link": "2.4.3",
|
2025-12-08 16:02:26 +01:00
|
|
|
"react-virtuoso": "4.17.0",
|
2025-03-21 00:04:30 +01:00
|
|
|
"rehype-raw": "7.0.0",
|
2023-04-25 17:04:21 +02:00
|
|
|
"rehype-sanitize": "5.0.1",
|
2024-02-27 17:58:08 +01:00
|
|
|
"remark-gfm": "3.0.1",
|
|
|
|
|
"remark-supersub": "1.0.0",
|
2023-12-11 00:49:36 +00:00
|
|
|
"tcp-port-used": "1.0.2",
|
2025-05-12 23:54:44 +02:00
|
|
|
"typescript": "5.1.6",
|
2025-11-21 16:20:09 +01:00
|
|
|
"uuid": "13.0.0",
|
2024-02-27 17:58:08 +01:00
|
|
|
"zustand": "4.4.3"
|
2023-01-29 21:07:23 +01:00
|
|
|
},
|
|
|
|
|
"scripts": {
|
2025-11-01 19:39:22 +01:00
|
|
|
"generate:assets": "node scripts/generate-asset-manifest.js",
|
|
|
|
|
"prebuild": "yarn generate:assets",
|
|
|
|
|
"prestart": "yarn generate:assets",
|
2025-03-04 17:53:05 +01:00
|
|
|
"start": "vite",
|
|
|
|
|
"build": "cross-env PUBLIC_URL=./ GENERATE_SOURCEMAP=false vite build",
|
2025-05-22 13:15:40 +02:00
|
|
|
"build:preload": "vite build --config electron/vite.preload.config.js",
|
2025-11-07 12:18:42 +01:00
|
|
|
"build-vercel": "cross-env NODE_OPTIONS=\"--max_old_space_size=4096\" PUBLIC_URL=./ GENERATE_SOURCEMAP=true VITE_COMMIT_REF=$COMMIT_REF CI='' vite build",
|
2025-03-04 17:53:05 +01:00
|
|
|
"test": "vitest",
|
|
|
|
|
"preview": "vite preview",
|
2025-11-01 23:08:14 +01:00
|
|
|
"analyze-bundle": "cross-env PUBLIC_URL=./ GENERATE_SOURCEMAP=true vite build && npx source-map-explorer 'dist/assets/*.js'",
|
2025-05-22 13:15:40 +02:00
|
|
|
"electron": "yarn build:preload && cross-env ELECTRON_IS_DEV=1 yarn electron:before && cross-env ELECTRON_IS_DEV=1 electron .",
|
2023-04-24 19:42:49 +00:00
|
|
|
"electron:no-delete-data": "yarn electron:before:download-ipfs && electron .",
|
|
|
|
|
"electron:start": "concurrently \"cross-env BROWSER=none yarn start\" \"wait-on http://localhost:3000 && yarn electron\"",
|
|
|
|
|
"electron:start:no-delete-data": "concurrently \"cross-env BROWSER=none yarn start\" \"wait-on http://localhost:3000 && yarn electron:no-delete-data\"",
|
2025-05-22 13:15:40 +02:00
|
|
|
"electron:build:linux": "yarn build && yarn build:preload && electron-rebuild && electron-builder build --publish never -l",
|
|
|
|
|
"electron:build:windows": "yarn build && yarn build:preload && yarn electron-rebuild && electron-builder build --publish never -w",
|
|
|
|
|
"electron:build:mac": "yarn build && yarn build:preload && yarn electron-rebuild && electron-builder build --publish never -m",
|
2025-05-12 23:54:44 +02:00
|
|
|
"electron:before": "yarn electron-rebuild && yarn electron:before:download-ipfs && yarn electron:before:delete-data",
|
2023-12-11 00:49:36 +00:00
|
|
|
"electron:before:download-ipfs": "node electron/download-ipfs",
|
2023-04-25 21:19:33 +00:00
|
|
|
"electron:before:delete-data": "rimraf .plebbit",
|
2023-09-16 21:19:56 +02:00
|
|
|
"android:build:icons": "cordova-res android --skip-config --copy --resources /tmp/plebbit-react-android-icons --icon-source ./android/icons/icon.png --splash-source ./android/icons/splash.png --icon-foreground-source ./android/icons/icon-foreground.png --icon-background-source '#ffffee'",
|
2024-02-27 17:58:08 +01:00
|
|
|
"prettier": "prettier {src,electron}/**/*.{js,ts,tsx} --write",
|
2025-03-04 17:53:05 +01:00
|
|
|
"changelog": "conventional-changelog -p angular -i CHANGELOG.md -s -r 0",
|
2025-10-18 22:49:09 +02:00
|
|
|
"android:build": "yarn build && npx cap sync android && npx cap run android",
|
|
|
|
|
"i18n:update": "node scripts/update-translations.js",
|
|
|
|
|
"i18n:update:dry": "node scripts/update-translations.js --dry"
|
2023-01-29 21:07:23 +01:00
|
|
|
},
|
|
|
|
|
"browserslist": {
|
|
|
|
|
"production": [
|
2023-08-04 21:28:27 +00:00
|
|
|
"chrome >= 67",
|
|
|
|
|
"edge >= 79",
|
|
|
|
|
"firefox >= 68",
|
|
|
|
|
"opera >= 54",
|
|
|
|
|
"safari >= 14"
|
2023-01-29 21:07:23 +01:00
|
|
|
],
|
|
|
|
|
"development": [
|
|
|
|
|
"last 1 chrome version",
|
|
|
|
|
"last 1 firefox version",
|
|
|
|
|
"last 1 safari version"
|
|
|
|
|
]
|
2023-01-31 23:08:57 +01:00
|
|
|
},
|
2024-02-27 17:58:08 +01:00
|
|
|
"devDependencies": {
|
2025-11-29 18:43:25 +01:00
|
|
|
"@capacitor/android": "7.4.4",
|
|
|
|
|
"@capacitor/cli": "7.4.4",
|
|
|
|
|
"@capacitor/core": "7.4.4",
|
2025-05-12 23:54:44 +02:00
|
|
|
"@electron/rebuild": "4.0.0",
|
2025-11-21 16:20:09 +01:00
|
|
|
"@react-scan/vite-plugin-react-scan": "0.1.8",
|
2024-02-27 17:58:08 +01:00
|
|
|
"@types/memoizee": "0.4.9",
|
2025-05-12 23:54:44 +02:00
|
|
|
"@typescript-eslint/eslint-plugin": "8.29.0",
|
|
|
|
|
"@typescript-eslint/parser": "8.29.0",
|
2025-03-04 17:53:05 +01:00
|
|
|
"@vitejs/plugin-react": "4.3.4",
|
|
|
|
|
"assert": "2.1.0",
|
2025-11-20 18:24:18 +01:00
|
|
|
"babel-plugin-react-compiler": "1.0.0",
|
2025-03-04 17:53:05 +01:00
|
|
|
"buffer": "6.0.3",
|
2024-02-27 17:58:08 +01:00
|
|
|
"concurrently": "8.0.1",
|
|
|
|
|
"conventional-changelog-cli": "4.1.0",
|
|
|
|
|
"cordova-res": "0.15.4",
|
|
|
|
|
"cross-env": "7.0.3",
|
2025-03-04 17:53:05 +01:00
|
|
|
"crypto-browserify": "3.12.1",
|
2024-02-27 17:58:08 +01:00
|
|
|
"cz-conventional-changelog": "3.3.0",
|
|
|
|
|
"decompress": "4.2.1",
|
2025-11-29 18:43:25 +01:00
|
|
|
"electron": "36.9.5",
|
2024-06-20 15:35:28 +02:00
|
|
|
"electron-builder": "24.13.2",
|
2025-11-29 18:43:25 +01:00
|
|
|
"eslint": "8.57.1",
|
2025-03-04 17:53:05 +01:00
|
|
|
"eslint-config-react-app": "7.0.1",
|
|
|
|
|
"eslint-plugin-react": "7.37.4",
|
2025-11-20 18:24:18 +01:00
|
|
|
"eslint-plugin-react-compiler": "19.1.0-rc.2",
|
2025-03-04 17:53:05 +01:00
|
|
|
"eslint-plugin-react-hooks": "5.2.0",
|
2024-02-27 17:58:08 +01:00
|
|
|
"husky": "4.3.8",
|
2025-03-04 17:53:05 +01:00
|
|
|
"isomorphic-fetch": "3.0.0",
|
2025-12-12 22:20:58 +01:00
|
|
|
"jsdom": "27.3.0",
|
2024-02-27 17:58:08 +01:00
|
|
|
"lint-staged": "12.3.8",
|
2025-11-21 16:20:09 +01:00
|
|
|
"progress": "2.0.3",
|
|
|
|
|
"react-scan": "0.4.3",
|
2025-03-04 17:53:05 +01:00
|
|
|
"stream-browserify": "3.0.0",
|
2025-11-29 18:43:25 +01:00
|
|
|
"vite": "6.4.1",
|
2025-03-04 17:53:05 +01:00
|
|
|
"vite-plugin-eslint": "1.8.1",
|
|
|
|
|
"vite-plugin-node-polyfills": "0.23.0",
|
|
|
|
|
"vite-plugin-pwa": "0.21.1",
|
2025-12-12 22:20:58 +01:00
|
|
|
"vitest": "4.0.15",
|
2025-11-29 18:43:25 +01:00
|
|
|
"wait-on": "9.0.3"
|
|
|
|
|
},
|
|
|
|
|
"resolutions": {
|
2025-12-16 17:42:58 +01:00
|
|
|
"js-yaml": "4.1.1",
|
2025-12-23 19:36:11 +01:00
|
|
|
"baseline-browser-mapping": "^2.9.11"
|
2024-02-27 17:58:08 +01:00
|
|
|
},
|
2023-04-24 19:42:49 +00:00
|
|
|
"main": "electron/main.js",
|
|
|
|
|
"build": {
|
2025-10-17 23:30:35 +02:00
|
|
|
"appId": "5chan.desktop",
|
|
|
|
|
"productName": "5chan",
|
2023-12-13 00:00:11 +00:00
|
|
|
"beforePack": "electron/before-pack.js",
|
2025-05-13 15:57:51 +02:00
|
|
|
"afterAllArtifactBuild": "electron/after-all-artifact-build.cjs",
|
2023-04-24 19:42:49 +00:00
|
|
|
"extraResources": [
|
|
|
|
|
{
|
|
|
|
|
"from": "bin/${os}",
|
|
|
|
|
"to": "bin",
|
|
|
|
|
"filter": [
|
|
|
|
|
"**/*"
|
|
|
|
|
]
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"files": [
|
2025-11-01 23:08:14 +01:00
|
|
|
"dist/**/*",
|
2023-04-24 19:42:49 +00:00
|
|
|
"electron/**/*",
|
2025-05-13 17:14:01 +02:00
|
|
|
"package.json",
|
|
|
|
|
"node_modules/**/*"
|
2023-04-24 19:42:49 +00:00
|
|
|
],
|
|
|
|
|
"extends": null,
|
|
|
|
|
"mac": {
|
|
|
|
|
"target": "dmg",
|
|
|
|
|
"category": "public.app-category.social-networking",
|
|
|
|
|
"type": "distribution"
|
|
|
|
|
},
|
|
|
|
|
"win": {
|
|
|
|
|
"target": [
|
|
|
|
|
"portable",
|
|
|
|
|
"nsis"
|
|
|
|
|
]
|
|
|
|
|
},
|
|
|
|
|
"linux": {
|
|
|
|
|
"target": "AppImage",
|
|
|
|
|
"category": "Network"
|
|
|
|
|
}
|
|
|
|
|
},
|
2023-09-16 21:48:40 +00:00
|
|
|
"lint-staged": {
|
2024-02-27 17:58:08 +01:00
|
|
|
"{src,electron}/**/*.{js,ts,tsx}": [
|
2023-12-16 16:47:53 +00:00
|
|
|
"prettier --write"
|
2023-09-16 21:48:40 +00:00
|
|
|
]
|
|
|
|
|
},
|
|
|
|
|
"husky": {
|
|
|
|
|
"hooks": {
|
|
|
|
|
"prepare-commit-msg": "exec < /dev/tty && cz --hook || true",
|
|
|
|
|
"pre-commit": "lint-staged"
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"config": {
|
|
|
|
|
"commitizen": {
|
|
|
|
|
"path": "./node_modules/cz-conventional-changelog"
|
|
|
|
|
}
|
2023-01-29 21:07:23 +01:00
|
|
|
}
|
|
|
|
|
}
|