{
  "name": "discourse",
  "private": true,
  "repository": "https://github.com/discourse/discourse",
  "author": "Discourse",
  "license": "GPL-2.0-only",
  "devDependencies": {
    "@discourse/lint-configs": "^1.3.9",
    "@discourse/moment-timezone-names-translations": "^1.0.0",
    "@fortawesome/fontawesome-free": "5.15.4",
    "@glint/core": "^1.4.0",
    "@glint/environment-ember-loose": "^1.4.0",
    "@glint/environment-ember-template-imports": "^1.4.0",
    "@glint/template": "^1.4.0",
    "@mixer/parallel-prettier": "^2.0.3",
    "chart.js": "3.5.1",
    "chartjs-plugin-datalabels": "2.2.0",
    "chrome-launcher": "^1.1.2",
    "chrome-remote-interface": "^0.33.2",
    "concurrently": "^8.2.2",
    "ember-template-lint": "^5.13.0",
    "esbuild": "^0.23.0",
    "eslint": "^8.57.0",
    "jsdoc": "^4.0.0",
    "lefthook": "^1.7.11",
    "lint-to-the-future": "^2.0.0",
    "lint-to-the-future-ember-template": "^1.1.1",
    "lint-to-the-future-eslint": "^2.0.1",
    "magnific-popup": "1.1.0",
    "moment": "2.30.1",
    "moment-timezone": "0.5.45",
    "patch-package": "^8.0.0",
    "pikaday": "1.8.2",
    "postinstall-postinstall": "^2.1.0",
    "prettier": "^2.8.8",
    "puppeteer-core": "^22.15.0",
    "squoosh": "discourse/squoosh#dc9649d",
    "typescript": "^5.5.4"
  },
  "scripts": {
    "dev": "concurrently \"bin/ember-cli server --environment=development\" \"RAILS_ENV=development bin/rails server\"",
    "lint": "concurrently \"npm:lint:*(!fix)\" --names \"lint:\"",
    "lint:fix": "concurrently \"npm:lint:*:fix\" --names \"fix:\"",
    "lint:js": "eslint ./app/assets/javascripts --cache",
    "lint:js-plugins": "eslint ./plugins --cache",
    "lint:js:fix": "eslint --fix ./app/assets/javascripts",
    "lint:js-plugins:fix": "eslint --fix ./plugins",
    "lint:hbs": "ember-template-lint 'app/assets/javascripts/**/*.{gjs,hbs}' 'plugins/**/assets/javascripts/**/*.{gjs,hbs}' --no-error-on-unmatched-pattern",
    "lint:hbs:fix": "ember-template-lint 'app/assets/javascripts/**/*.{gjs,hbs}' 'plugins/**/assets/javascripts/**/*.{gjs,hbs}' --no-error-on-unmatched-pattern --fix",
    "lint:prettier": "yarn pprettier --list-different 'app/assets/stylesheets/**/*.scss' 'app/assets/javascripts/**/*.{js,gjs,hbs}' 'plugins/**/assets/stylesheets/**/*.scss' 'plugins/**/assets/javascripts/**/*.{js,gjs,hbs}'",
    "lint:prettier:fix": "yarn prettier -w 'app/assets/stylesheets/**/*.scss' 'app/assets/javascripts/**/*.{js,gjs,hbs}' 'plugins/**/assets/stylesheets/**/*.scss' 'plugins/**/assets/javascripts/**/*.{js,gjs,hbs}'",
    "lttf:ignore": "lint-to-the-future ignore",
    "lttf:output": "lint-to-the-future output -o ./lint-progress/",
    "lint-progress": "yarn lttf:output && npx html-pages ./lint-progress --no-cache",
    "postinstall": "./app/assets/javascripts/run-patch-package && rm -rf app/assets/javascripts/node_modules"
  },
  "workspaces": [
    "app/assets/javascripts/admin",
    "app/assets/javascripts/custom-proxy",
    "app/assets/javascripts/deprecation-silencer",
    "app/assets/javascripts/dialog-holder",
    "app/assets/javascripts/discourse",
    "app/assets/javascripts/discourse-common",
    "app/assets/javascripts/discourse-hbr",
    "app/assets/javascripts/discourse-i18n",
    "app/assets/javascripts/discourse-markdown-it",
    "app/assets/javascripts/discourse-plugins",
    "app/assets/javascripts/discourse-widget-hbs",
    "app/assets/javascripts/ember-cli-progress-ci",
    "app/assets/javascripts/ember-production-deprecations",
    "app/assets/javascripts/float-kit",
    "app/assets/javascripts/pretty-text",
    "app/assets/javascripts/select-kit",
    "app/assets/javascripts/theme-transpiler",
    "app/assets/javascripts/truth-helpers"
  ],
  "resolutions": {
    "**/unset-value": "2.0.1"
  },
  "engines": {
    "node": ">= 18",
    "npm": "please-use-yarn",
    "yarn": ">= 1.21.1"
  }
}