hongbo-miao/hongbomiao.com

View on GitHub
web/package.json

Summary

Maintainability
Test Coverage
{
  "name": "hm-web",
  "private": true,
  "engines": {
    "node": "22.x"
  },
  "scripts": {
    "dev": "react-scripts start",
    "prebuild": "sh bin/prebuild.sh",
    "build": "react-scripts build",
    "postbuild": "sh bin/postbuild.sh",
    "serve": "serve build --listen 3000",
    "analyze": "react-scripts build && source-map-explorer 'build/static/js/*.js'",
    "tsc": "tsc --noEmit",
    "lint:javascript": "eslint . --ext .js,.ts,.tsx",
    "lint:javascript:fix": "eslint . --ext .js,.ts,.tsx --fix",
    "test": "react-scripts test --watchAll=false",
    "test:watch": "react-scripts test",
    "test:coverage": "react-scripts test --coverage --watchAll=false",
    "storybook": "start-storybook --static-dir public --port 9009",
    "storybook:build": "build-storybook -s public",
    "storybook:publish": "chromatic --build-script-name storybook:build",
    "lighthouse": "lhci autorun",
    "eject": "react-scripts eject"
  },
  "eslintConfig": {
    "extends": [
      "react-app",
      "react-app/jest"
    ]
  },
  "browserslist": {
    "production": [
      ">0.2%",
      "not dead",
      "not op_mini all"
    ],
    "development": [
      "last 1 chrome version",
      "last 1 firefox version",
      "last 1 safari version"
    ]
  },
  "jest": {
    "coveragePathIgnorePatterns": [
      ".query.ts",
      ".story.tsx",
      ".type.ts",
      "src/shared/libs/*",
      "src/shared/utils/initSentry.ts"
    ]
  },
  "dependencies": {
    "@analytics/google-tag-manager": "0.5.5",
    "@opentelemetry/api": "1.9.0",
    "@opentelemetry/exporter-trace-otlp-http": "0.53.0",
    "@opentelemetry/instrumentation": "0.53.0",
    "@opentelemetry/instrumentation-document-load": "0.40.0",
    "@opentelemetry/instrumentation-xml-http-request": "0.53.0",
    "@opentelemetry/resources": "1.26.0",
    "@opentelemetry/sdk-trace-base": "1.26.0",
    "@opentelemetry/sdk-trace-web": "1.26.0",
    "@opentelemetry/semantic-conventions": "1.27.0",
    "@sentry/react": "7.119.1",
    "@tanstack/react-query": "4.36.1",
    "analytics": "0.8.14",
    "axios": "1.7.7",
    "bulma": "1.0.2",
    "clsx": "2.1.1",
    "graphql": "16.9.0",
    "graphql-tag": "2.12.6",
    "graphql-ws": "5.16.0",
    "react": "18.3.1",
    "react-dom": "18.3.1",
    "react-hook-form": "7.53.0",
    "react-redux": "9.1.2",
    "react-router-dom": "6.26.2",
    "react-scripts": "5.0.1",
    "react-use": "17.5.1",
    "redux": "4.2.1",
    "redux-devtools-extension": "2.13.9",
    "redux-observable": "2.0.0",
    "rxjs": "7.8.1",
    "web-vitals": "3.5.2",
    "workbox-background-sync": "7.1.0",
    "workbox-broadcast-update": "7.1.0",
    "workbox-cacheable-response": "7.1.0",
    "workbox-core": "7.1.0",
    "workbox-expiration": "7.1.0",
    "workbox-google-analytics": "7.1.0",
    "workbox-navigation-preload": "7.1.0",
    "workbox-precaching": "7.1.0",
    "workbox-range-requests": "7.1.0",
    "workbox-routing": "7.1.0",
    "workbox-strategies": "7.1.0",
    "workbox-streams": "7.1.0"
  },
  "devDependencies": {
    "@babel/cli": "7.25.7",
    "@babel/plugin-transform-react-display-name": "7.25.7",
    "@babel/preset-env": "7.25.8",
    "@babel/preset-react": "7.25.7",
    "@babel/preset-typescript": "7.25.7",
    "@lhci/cli": "0.14.0",
    "@storybook/addon-actions": "6.5.16",
    "@storybook/addon-links": "6.5.16",
    "@storybook/addons": "6.5.16",
    "@storybook/builder-webpack5": "6.5.16",
    "@storybook/manager-webpack5": "6.5.16",
    "@storybook/preset-create-react-app": "4.1.2",
    "@storybook/react": "6.5.16",
    "@tanstack/react-query-devtools": "4.36.1",
    "@testing-library/jest-dom": "6.5.0",
    "@testing-library/react": "15.0.7",
    "@testing-library/react-hooks": "8.0.1",
    "@testing-library/user-event": "14.5.2",
    "@types/jest": "29.5.13",
    "@types/node": "20.16.11",
    "@types/react": "18.3.11",
    "@types/react-dom": "18.3.1",
    "@types/redux-mock-store": "1.0.6",
    "@types/storybook__react": "5.2.1",
    "@typescript-eslint/eslint-plugin": "8.5.0",
    "@typescript-eslint/parser": "8.5.0",
    "chromatic": "11.10.4",
    "eslint": "8.57.1",
    "eslint-config-airbnb": "19.0.4",
    "eslint-config-prettier": "9.1.0",
    "eslint-plugin-import": "2.30.0",
    "eslint-plugin-jest": "28.8.3",
    "eslint-plugin-jest-dom": "5.4.0",
    "eslint-plugin-jsx-a11y": "6.10.0",
    "eslint-plugin-prettier": "5.2.1",
    "eslint-plugin-react": "7.36.1",
    "eslint-plugin-security": "3.0.1",
    "eslint-plugin-testing-library": "6.3.0",
    "jest": "29.7.0",
    "prettier": "3.3.3",
    "purgecss": "6.0.0",
    "react-test-renderer": "18.3.1",
    "redux-mock-store": "1.5.4",
    "serve": "14.2.3",
    "sitemap": "8.0.0",
    "source-map-explorer": "2.5.3",
    "typescript": "5.6.3",
    "webpack": "5.94.0"
  },
  "overrides": {
    "postcss": "8.4.47"
  }
}