{
  "name": "discourse",
  "private": true,
  "repository": "https://github.com/discourse/discourse",
  "author": "Discourse",
  "license": "GPL-2.0-only",
  "devDependencies": {
    "@babel/plugin-proposal-decorators": "^7.25.9",
    "@discourse/lint-configs": "^2.11.0",
    "@discourse/moment-timezone-names-translations": "^1.0.0",
    "@fortawesome/fontawesome-free": "6.7.2",
    "@glint/core": "1.4.1-unstable.34c4510",
    "@glint/environment-ember-loose": "1.4.1-unstable.34c4510",
    "@glint/environment-ember-template-imports": "1.4.1-unstable.34c4510",
    "@glint/template": "1.4.1-unstable.34c4510",
    "@rdil/parallel-prettier": "^3.0.0",
    "@swc/core": "^1.11.9",
    "chart.js": "3.5.1",
    "chartjs-plugin-datalabels": "2.2.0",
    "chrome-launcher": "^1.1.2",
    "chrome-remote-interface": "^0.33.3",
    "concurrently": "^9.1.2",
    "ember-template-lint": "7.0.1",
    "esbuild": "^0.25.1",
    "eslint": "9.22.0",
    "jsdoc": "^4.0.4",
    "lefthook": "^1.11.3",
    "licensee": "^11.1.1",
    "lint-to-the-future": "^2.6.3",
    "lint-to-the-future-ember-template": "^3.0.0",
    "lint-to-the-future-eslint": "^3.0.0",
    "magnific-popup": "1.1.0",
    "moment": "2.30.1",
    "moment-timezone": "0.5.45",
    "pikaday": "1.8.2",
    "prettier": "3.5.3",
    "puppeteer-core": "^24.4.0",
    "squoosh": "https://codeload.github.com/discourse/squoosh/tar.gz/dc9649d",
    "stylelint": "16.15.0",
    "terser": "^5.39.0",
    "typescript": "5.6.x"
  },
  "scripts": {
    "dev": "concurrently \"bin/ember-cli server --environment=development\" \"RAILS_ENV=development bin/rails server\"",
    "lint": "concurrently \"npm:lint:*(!fix)\" --names \"lint:\"",
    "lint:css": "pnpm stylelint 'app/assets/stylesheets/**/*.scss' $(script/list_bundled_plugins '/assets/stylesheets/**/*.scss')",
    "lint:css:fix": "pnpm stylelint --fix 'app/assets/stylesheets/**/*.scss' $(script/list_bundled_plugins '/assets/stylesheets/**/*.scss')",
    "lint:fix": "concurrently \"npm:lint:*:fix\" --names \"fix:\"",
    "lint:js": "eslint ./app/assets/javascripts $(script/list_bundled_plugins) --cache --no-error-on-unmatched-pattern",
    "lint:js:fix": "eslint --fix ./app/assets/javascripts $(script/list_bundled_plugins) --no-error-on-unmatched-pattern",
    "lint:hbs": "ember-template-lint 'app/assets/javascripts/**/*.{gjs,hbs}' 'plugins/*/assets/javascripts/**/*.{gjs,hbs}' 'plugins/*/admin/assets/javascripts/**/*.{gjs,hbs}'",
    "lint:hbs:fix": "ember-template-lint 'app/assets/javascripts/**/*.{gjs,hbs}' 'plugins/*/assets/javascripts/**/*.{gjs,hbs}' 'plugins/*/admin/assets/javascripts/**/*.{gjs,hbs}' --fix",
    "lint:prettier": "pnpm pprettier --list-different 'app/assets/stylesheets/**/*.scss' 'app/assets/javascripts/**/*.{js,gjs,hbs,css}' $(script/list_bundled_plugins '/assets/stylesheets/**/*.scss') $(script/list_bundled_plugins '/{assets,admin/assets,test}/javascripts/**/*.{js,gjs,hbs}')",
    "lint:prettier:fix": "pnpm prettier -w 'app/assets/stylesheets/**/*.scss' 'app/assets/javascripts/**/*.{js,gjs,hbs,css}' $(script/list_bundled_plugins '/assets/stylesheets/**/*.scss') $(script/list_bundled_plugins '/{assets,admin/assets,test}/javascripts/**/*.{js,gjs,hbs}')",
    "lttf:ignore": "lint-to-the-future ignore",
    "lttf:output": "lint-to-the-future output -o ./lint-progress/",
    "lint-progress": "pnpm lttf:output && npx html-pages ./lint-progress --no-cache",
    "ember": "pnpm --dir=app/assets/javascripts/discourse ember"
  },
  "engines": {
    "node": ">= 20",
    "npm": "please-use-pnpm",
    "yarn": "please-use-pnpm",
    "pnpm": "^9"
  },
  "packageManager": "pnpm@9.15.5",
  "pnpm": {
    "patchedDependencies": {
      "ember-this-fallback@0.4.0": "patches/ember-this-fallback@0.4.0.patch",
      "babel-plugin-debug-macros@0.3.4": "patches/babel-plugin-debug-macros@0.3.4.patch",
      "virtual-dom@2.1.1": "patches/virtual-dom@2.1.1.patch",
      "licensee@11.1.1": "patches/licensee@11.1.1.patch",
      "content-tag@3.1.1": "patches/content-tag@3.1.1.patch",
      "@ember-compat/tracked-built-ins@0.9.1": "patches/@ember-compat__tracked-built-ins@0.9.1.patch",
      "ember-source@5.12.0": "patches/ember-source@5.12.0.patch"
    },
    "peerDependencyRules": {
      "allowedVersions": {
        "lint-to-the-future-eslint>eslint": "*",
        "@mixer/parallel-prettier>prettier": "*",
        "lint-to-the-future-ember-template>ember-template-lint": "*",
        "ember-this-fallback>ember-source": "*"
      },
      "ignoreMissing": [
        "webpack"
      ]
    }
  }
}