{ "name": "umami", "version": "0.56.0", "description": "A simple, fast, website analytics alternative to Google Analytics. ", "author": "Mike Cao ", "license": "MIT", "homepage": "https://github.com/mikecao/umami", "repository": { "type": "git", "url": "https://github.com/mikecao/umami.git" }, "scripts": { "dev": "next dev", "build": "npm-run-all build-tracker build-lang build-db build-app", "start": "next start", "build-app": "next build", "build-tracker": "rollup -c rollup.tracker.config.js", "build-db": "npm-run-all copy-db-schema build-db-client", "build-lang": "npm-run-all format-lang compile-lang", "copy-db-schema": "node scripts/copy-db-schema.js", "build-db-schema": "dotenv prisma introspect", "build-db-client": "dotenv prisma generate", "build-mysql-schema": "dotenv prisma introspect -- --schema=./prisma/schema.mysql.prisma", "build-mysql-client": "dotenv prisma generate -- --schema=./prisma/schema.mysql.prisma", "build-postgresql-schema": "dotenv prisma introspect -- --schema=./prisma/schema.postgresql.prisma", "build-postgresql-client": "dotenv prisma generate -- --schema=./prisma/schema.postgresql.prisma", "generate-lang": "npm-run-all extract-lang merge-lang", "extract-lang": "formatjs extract {pages,components}/**/*.js --out-file build/messages.json", "merge-lang": "node scripts/merge-lang.js", "format-lang": "node scripts/format-lang.js", "compile-lang": "formatjs compile-folder --ast build lang-compiled" }, "lint-staged": { "**/*.js": [ "prettier --write", "eslint" ], "**/*.css": [ "stylelint --fix", "prettier --write" ], "**/*.json": [ "prettier --write" ] }, "husky": { "hooks": { "pre-commit": "lint-staged" } }, "dependencies": { "@prisma/client": "2.7.1", "@reduxjs/toolkit": "^1.4.0", "bcrypt": "^5.0.0", "chalk": "^4.1.0", "chart.js": "^2.9.3", "classnames": "^2.2.6", "cookie": "^0.4.1", "cors": "^2.8.5", "date-fns": "^2.16.1", "date-fns-tz": "^1.0.10", "detect-browser": "^5.1.1", "dotenv": "^8.2.0", "formik": "^2.1.5", "geolite2-redist": "^1.0.7", "immer": "^7.0.9", "is-localhost-ip": "^1.4.0", "isbot-fast": "^1.2.0", "jose": "^2.0.2", "maxmind": "^4.1.4", "moment-timezone": "^0.5.31", "next": "^9.5.3", "react": "^16.13.1", "react-dom": "^16.13.1", "react-intl": "^5.8.2", "react-redux": "^7.2.1", "react-simple-maps": "^2.1.2", "react-spring": "^8.0.27", "react-tooltip": "^4.2.10", "react-window": "^1.8.5", "redux": "^4.0.5", "redux-thunk": "^2.3.0", "request-ip": "^2.1.3", "thenby": "^1.3.4", "timezone-support": "^2.0.2", "tinycolor2": "^1.4.1", "uuid": "^8.3.0" }, "devDependencies": { "@formatjs/cli": "^2.11.3", "@prisma/cli": "2.7.1", "@rollup/plugin-buble": "^0.21.3", "@rollup/plugin-node-resolve": "^9.0.0", "@rollup/plugin-replace": "^2.3.3", "@svgr/webpack": "^5.4.0", "cross-env": "^7.0.2", "del": "^5.1.0", "dotenv-cli": "^4.0.0", "eslint": "^7.9.0", "eslint-config-prettier": "^6.11.0", "eslint-plugin-prettier": "^3.1.3", "eslint-plugin-react": "^7.20.6", "eslint-plugin-react-hooks": "^4.1.2", "extract-react-intl-messages": "^4.1.1", "husky": "^4.3.0", "lint-staged": "^10.4.0", "npm-run-all": "^4.1.5", "postcss-flexbugs-fixes": "^4.2.1", "postcss-import": "^12.0.1", "postcss-preset-env": "^6.7.0", "prettier": "^2.1.2", "prettier-eslint": "^11.0.0", "rollup": "^2.28.1", "rollup-plugin-hashbang": "^2.2.2", "rollup-plugin-terser": "^7.0.2", "stylelint": "^13.7.1", "stylelint-config-css-modules": "^2.2.0", "stylelint-config-prettier": "^8.0.1", "stylelint-config-recommended": "^3.0.0" } }