{
  "name": "@mdn/mdn-http-observatory",
  "version": "1.7.1",
  "author": "Mozilla Developer Network",
  "description": "The MDN HTTP Observatory is a set of tools to analyze your website and inform you if you are utilizing the many available methods to secure it.",
  "main": "src/index.js",
  "packageManager": "npm@11.17.0",
  "engines": {
    "node": ">=24"
  },
  "devEngines": {
    "packageManager": {
      "name": "npm",
      "version": ">=11.8.0"
    }
  },
  "scripts": {
    "start": "NODE_EXTRA_CA_CERTS=node_modules/node_extra_ca_certs_mozilla_bundle/ca_bundle/ca_intermediate_root_bundle.pem node src/api/index.js",
    "dev": "NODE_EXTRA_CA_CERTS=node_modules/node_extra_ca_certs_mozilla_bundle/ca_bundle/ca_intermediate_root_bundle.pem nodemon src/api/index.js",
    "test": "CONFIG_FILE=conf/config-test.json node --test --test-concurrency=1 'test/**/*.test.js'",
    "test:coverage": "c8 npm test",
    "capture-fixtures": "node scripts/capture-fixtures.js",
    "lint": "eslint .",
    "tsc": "tsc -p jsconfig.json",
    "updateHsts": "node src/retrieve-hsts.js",
    "updateTldList": "node src/retrieve-tld-list.js",
    "refreshMaterializedViews": "node src/maintenance/index.js",
    "maintenance": "node src/maintenance/index.js",
    "migrate": "node -e 'import(\"./src/database/migrate.js\").then( m => m.migrateDatabase() )'",
    "postinstall": "npm run updateHsts && npm run updateTldList"
  },
  "bin": {
    "mdn-http-observatory-scan": "bin/wrapper.js"
  },
  "type": "module",
  "repository": {
    "type": "git",
    "url": "git+https://github.com/mdn/mdn-http-observatory.git"
  },
  "license": "MPL-2.0",
  "devDependencies": {
    "@eslint/compat": "^2.1.0",
    "@eslint/config-helpers": "^0.7.0",
    "@eslint/js": "^10.0.1",
    "@faker-js/faker": "^10.0.0",
    "@supercharge/promise-pool": "^3.2.0",
    "@types/chai": "^5.2.2",
    "@types/convict": "^6.1.6",
    "@types/pg": "^8.20.0",
    "@types/pg-format": "^1.0.5",
    "@types/tough-cookie": "^4.0.5",
    "c8": "^12.0.0",
    "chai": "^6.2.0",
    "eslint": "^10.7.0",
    "eslint-config-prettier": "^10.1.8",
    "eslint-plugin-import-x": "^4.17.1",
    "eslint-plugin-jsdoc": "^64.2.0",
    "eslint-plugin-n": "^18.2.2",
    "eslint-plugin-unicorn": "^74.0.0",
    "json-schema-to-jsdoc": "^1.1.1",
    "lefthook": "^2.0.14",
    "nodemon": "^3.1.10",
    "prettier-eslint": "^17.1.1",
    "typescript": "^6.0.2",
    "typescript-eslint": "^8.63.0"
  },
  "dependencies": {
    "@fastify/cors": "^11.0.1",
    "@fastify/helmet": "^13.0.0",
    "@fastify/postgres": "^6.0.1",
    "@fastify/static": "^10.1.0",
    "@sentry/node": "^10.1.0",
    "axios": "^1.10.0",
    "axios-cookiejar-support": "^7.0.0",
    "change-case": "^5.4.4",
    "commander": "^15.0.0",
    "convict": "^6.2.4",
    "dayjs": "^1.11.13",
    "fastify": "^5.4.0",
    "fastify-simple-form": "^3.0.0",
    "htmlparser2": "^12.0.0",
    "http-cookie-agent": "^8.0.0",
    "node_extra_ca_certs_mozilla_bundle": "^1.0.7",
    "pg": "^8.16.2",
    "pg-format": "^1.0.4",
    "pg-pool": "^3.10.1",
    "postgrator": "^8.0.0",
    "postgrator-cli": "^10.0.0",
    "structured-headers": "^2.0.3",
    "tldts": "^7.0.12",
    "tough-cookie": "^5.0.0"
  },
  "optionalDependencies": {
    "pg-native": "^3.7.0"
  }
}
