Files
freeCodeCamp/client/package.json
2025-10-23 10:54:57 +05:30

182 lines
6.4 KiB
JSON

{
"name": "@freecodecamp/client",
"version": "0.0.1",
"description": "The freeCodeCamp.org open-source codebase and curriculum",
"license": "BSD-3-Clause",
"private": true,
"engines": {
"node": ">=16",
"pnpm": ">=10"
},
"repository": {
"type": "git",
"url": "git+https://github.com/freeCodeCamp/freeCodeCamp.git"
},
"bugs": {
"url": "https://github.com/freeCodeCamp/freeCodeCamp/issues"
},
"homepage": "https://github.com/freeCodeCamp/freeCodeCamp#readme",
"author": "freeCodeCamp <team@freecodecamp.org>",
"main": "none",
"scripts": {
"prebuild": "pnpm run common-setup && pnpm run build:scripts --env production",
"build": "NODE_OPTIONS=\"--max-old-space-size=7168 --no-deprecation\" gatsby build --prefix-paths",
"build:scripts": "pnpm run -F=browser-scripts build",
"clean": "gatsby clean",
"common-setup": "pnpm -w run compile:ts && pnpm run create:env && pnpm run create:trending && pnpm run create:search-placeholder",
"create:env": "DEBUG=fcc:* tsx ./tools/create-env.ts",
"create:trending": "tsx ./tools/download-trending.ts",
"create:search-placeholder": "tsx ./tools/generate-search-placeholder",
"predevelop": "pnpm run common-setup && pnpm run build:scripts --env development",
"develop": "NODE_OPTIONS=\"--max-old-space-size=7168 --no-deprecation\" gatsby develop --inspect=9230",
"lint": "tsx ./i18n/schema-validation.ts",
"serve": "gatsby serve -p 8000",
"serve-ci": "serve -l 8000 -c serve.json public",
"prestand-alone": "pnpm run prebuild",
"stand-alone": "gatsby develop",
"test": "vitest",
"validate-keys": "tsx --tsconfig ../tsconfig.json ../tools/scripts/lint/validate-keys"
},
"dependencies": {
"@babel/plugin-proposal-export-default-from": "7.23.3",
"@babel/plugin-proposal-function-bind": "7.23.3",
"@babel/plugin-transform-runtime": "^7.19.6",
"@babel/preset-env": "7.23.7",
"@babel/preset-react": "7.23.3",
"@babel/preset-typescript": "7.23.3",
"@babel/standalone": "7.23.7",
"@codesandbox/sandpack-react": "2.6.9",
"@codesandbox/sandpack-themes": "2.0.21",
"@fortawesome/fontawesome-svg-core": "6.7.1",
"@fortawesome/free-brands-svg-icons": "6.7.1",
"@fortawesome/free-solid-svg-icons": "6.7.1",
"@fortawesome/react-fontawesome": "0.2.2",
"@freecodecamp/loop-protect": "3.0.0",
"@freecodecamp/ui": "4.3.0",
"@gatsbyjs/reach-router": "1.3.9",
"@growthbook/growthbook-react": "1.6.0",
"@headlessui/react": "1.7.19",
"@loadable/component": "5.16.3",
"@redux-devtools/extension": "3.3.0",
"@redux-saga/core": "^1.2.2",
"@reduxjs/toolkit": "2.8.2",
"@stripe/react-stripe-js": "1.16.5",
"@stripe/stripe-js": "1.54.2",
"algoliasearch": "4.22.1",
"assert": "2.0.0",
"babel-plugin-preval": "5.1.0",
"babel-plugin-prismjs": "2.1.0",
"bezier-easing": "2.1.0",
"browser-cookies": "1.2.0",
"canvas-confetti": "^1.6.0",
"crypto-browserify": "3.12.0",
"date-fns": "4.1.0",
"date-fns-tz": "3.2.0",
"final-form": "4.20.10",
"gatsby": "3.15.0",
"gatsby-cli": "3.15.0",
"gatsby-plugin-create-client-paths": "3.15.0",
"gatsby-plugin-manifest": "3.15.0",
"gatsby-plugin-pnpm": "^1.2.10",
"gatsby-plugin-postcss": "4.15.0",
"gatsby-plugin-react-helmet": "4.15.0",
"gatsby-plugin-remove-serviceworker": "1.0.0",
"gatsby-source-filesystem": "3.15.0",
"gatsby-transformer-remark": "5.25.1",
"i18next": "25.2.1",
"instantsearch.js": "4.75.3",
"lodash": "4.17.21",
"lodash-es": "4.17.21",
"micromark": "4.0.0",
"monaco-editor": "0.33.0",
"nanoid": "3.3.7",
"normalize-url": "6.1.0",
"path-browserify": "1.0.1",
"postcss": "8.4.35",
"prismjs": "1.29.0",
"process": "0.11.10",
"prop-types": "15.8.1",
"qrcode.react": "^3.1.0",
"query-string": "7.1.3",
"react": "17.0.2",
"react-calendar-heatmap": "1.9.0",
"react-dom": "17.0.2",
"react-final-form": "6.5.9",
"react-gtm-module": "2.0.11",
"react-helmet": "6.1.0",
"react-hotkeys": "2.0.0",
"react-i18next": "15.5.2",
"react-instantsearch": "7.13.6",
"react-instantsearch-core": "7.13.6",
"react-monaco-editor": "0.48.0",
"react-redux": "7.2.9",
"react-reflex": "4.1.0",
"react-responsive": "9.0.2",
"react-scrollable-anchor": "0.6.1",
"react-spinkit": "3.0.0",
"react-tooltip": "4.5.1",
"react-transition-group": "4.4.5",
"react-youtube": "10.1.0",
"redux": "4.2.1",
"redux-actions": "2.6.5",
"redux-observable": "1.2.0",
"redux-saga": "1.2.3",
"reselect": "4.1.8",
"rxjs": "6.6.7",
"sanitize-html": "2.11.0",
"store": "2.0.12",
"stream-browserify": "3.0.0",
"tone": "14.7.77",
"typescript": "5.2.2",
"util": "0.12.5",
"uuid": "8.3.2",
"validator": "13.11.0",
"xterm": "^5.2.1",
"xterm-addon-fit": "^0.8.0"
},
"devDependencies": {
"@babel/plugin-syntax-dynamic-import": "7.8.3",
"@testing-library/jest-dom": "^6.8.0",
"@testing-library/react": "12.1.5",
"@testing-library/react-hooks": "^8.0.1",
"@total-typescript/ts-reset": "^0.5.0",
"@types/canvas-confetti": "^1.6.0",
"@types/gatsbyjs__reach-router": "1.3.0",
"@types/js-yaml": "4.0.5",
"@types/loadable__component": "5.13.8",
"@types/lodash-es": "^4.17.6",
"@types/node-fetch": "2",
"@types/prismjs": "^1.26.0",
"@types/react": "17.0.83",
"@types/react-dom": "17.0.19",
"@types/react-gtm-module": "2.0.3",
"@types/react-helmet": "6.1.11",
"@types/react-redux": "7.1.33",
"@types/react-responsive": "8.0.8",
"@types/react-scrollable-anchor": "0.6.4",
"@types/react-spinkit": "3.0.10",
"@types/react-test-renderer": "16.9.12",
"@types/react-transition-group": "4.4.10",
"@types/redux-actions": "2.6.5",
"@types/sanitize-html": "^2.8.0",
"@types/store": "^2.0.2",
"@types/validator": "^13.7.12",
"@vitest/ui": "^3.2.4",
"autoprefixer": "10.4.17",
"babel-plugin-macros": "3.1.0",
"core-js": "2.6.12",
"dotenv": "16.4.5",
"gatsby-plugin-webpack-bundle-analyser-v2": "1.1.32",
"i18next-fs-backend": "2.6.0",
"joi": "17.12.2",
"js-yaml": "4.1.0",
"monaco-editor-webpack-plugin": "7.0.1",
"node-fetch": "2.7.0",
"react-test-renderer": "17.0.2",
"redux-saga-test-plan": "4.0.6",
"serve": "13.0.4",
"vitest": "^3.2.4",
"webpack": "5.90.3"
}
}