{ "name": "@freecodecamp/freecodecamp", "private": true, "version": "0.0.1", "scripts": { "audit": "npm audit && lerna exec --concurrency 1 'echo $LERNA_PACKAGE_NAME && npm audit'", "audit:fix": "npm audit fix && lerna exec --concurrency 1 'echo $LERNA_PACKAGE_NAME && npm audit fix'", "bootstrap": "lerna bootstrap --ci", "clean": "npm-run-all clean:gatsby-site clean:packages", "clean:root-deps": "shx rm -rf node_modules", "clean:packages": "lerna clean -y", "clean:gatsby-site": "cd ./client && npm run clean", "develop": "npm-run-all ensure-env -p develop:*", "develop:client": "cd ./client && npm run develop", "develop:server": "cd ./api-server && npm run develop", "docker:clean": "docker-compose run -u root --rm freecodecamp bash -c \"rm -rf **/node_modules/* **/node_modules/..?* **/node_modules/.[!.]* node_modules/* node_modules/..?* node_modules/.[!.]*\"", "docker:develop": "docker-compose up client api-server", "docker:init": "docker-compose run -u root --rm freecodecamp bash change_volumes_owner.sh && docker-compose run -u root --rm client bash -c \"cd .. && bash change_volumes_owner.sh\" && docker-compose run -u root --rm api-server bash -c \"cd .. && bash change_volumes_owner.sh\"", "docker:install": "docker-compose run -u root --rm freecodecamp bash patch_npm_and_install.sh", "docker:seed": "docker-compose run --rm freecodecamp npm run seed", "docker:test": "docker-compose -f docker-compose.tests.yml run --rm tests bash", "docker:test:init": "docker-compose -f docker-compose.tests.yml run -u root --rm tests bash change_volumes_owner.sh", "ensure-env": "cross-env DEBUG=fcc:* node ./tools/scripts/build/ensure-env.js", "format": "npm-run-all -p format:*", "format:js": "npm run lint:js -- --fix", "format:css": "npm run prettier -- --write", "hooks:install": "node node_modules/husky/husky.js install", "hooks:uninstall": "node node_modules/husky/husky.js uninstall", "lint": "npm-run-all -p lint:*", "lint:challenges": "cd ./curriculum && npm run lint", "lint:js": "eslint .", "lint:css": "npm run prettier -- --check", "prettier": "prettier \"**/*.css\"", "postinstall": "npm run bootstrap", "seed": "npm-run-all -p seed:*", "seed:auth-user": "cross-env DEBUG=fcc:* node ./tools/scripts/seed/seedAuthUser", "seed:challenges": "cross-env DEBUG=fcc:* node ./tools/scripts/seed/seedChallenges", "test": "npm-run-all -p test:*", "test:client": "cd ./client && npm test && cd ../", "test:curriculum": "cd ./curriculum && npm test && cd ../", "test:guide-formatting": "node ./tools/scripts/ci/ensure-guide-formatting.js", "test:lint": "echo 'Warning: TODO - Define Linting tests.'", "test:search-indexing": "jest ./search-indexing", "test:server": "cd ./api-server && npm test && cd ../", "test:tools": "jest ./tools" }, "devDependencies": { "@freecodecamp/eslint-config": "^2.0.2", "babel-eslint": "^10.0.2", "cross-env": "^5.2.0", "debug": "^4.1.1", "dotenv": "^6.0.0", "eslint": "^5.16.0", "eslint-config-prettier": "^4.1.0", "eslint-plugin-babel": "^5.3.0", "eslint-plugin-import": "^2.18.1", "eslint-plugin-prefer-object-spread": "^1.2.1", "eslint-plugin-prettier": "^3.1.0", "eslint-plugin-react": "^7.14.2", "faker": "^4.1.0", "gray-matter": "^4.0.2", "gulp": "^4.0.2", "husky": "^1.3.1", "jest": "^24.8.0", "js-yaml": "^3.13.0", "lerna": "^3.16.0", "lint-staged": "^8.1.5", "lodash": "^4.17.15", "markdownlint": "^0.15.0", "npm-run-all": "^4.1.5", "ora": "^3.4.0", "prettier": "^1.18.2", "prismjs": "^1.16.0", "readdirp-walk": "^1.7.0", "shortid": "^2.2.14", "shx": "^0.3.2", "sinon": "^7.3.2", "sinon-express-mock": "^2.2.0", "slugg": "^1.2.1" }, "lint-staged": { "linters": { "*.js": [ "eslint --fix", "git add" ], "*.md": "node ./tools/scripts/lint/index.js", "*.css": [ "prettier --write", "git add" ] } }, "husky": { "hooks": { "pre-commit": "lint-staged" } } }