{"_id":"umami","_rev":"4-91b2ea84300f48f50db62f5a17a0a5db","name":"umami","dist-tags":{"latest":"2.10.0"},"versions":{"0.0.0":{"name":"umami","version":"0.0.0","description":"","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":{"name":"Marty Nelson","email":"marty@martypdx.com"},"license":"ISC","_id":"umami@0.0.0","_npmVersion":"5.0.3","_nodeVersion":"8.1.2","_npmUser":{"name":"martypdx","email":"marty@martypdx.com"},"dist":{"integrity":"sha512-WteHJfyEBYfI11xGQ5fMO/iUzztqWbhTQNRPZqyZMr/CBR7yNS/ktvrcPJwQxLMdqXoW9cN2n3GF/s2bQPbGXQ==","shasum":"be529498cfb0a762ae84e84b002d0a04ed7be3af","tarball":"https://registry.npmjs.org/umami/-/umami-0.0.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGTbmr4PPBJrqQY8DOQhOVInRnrnsKiEnfElYK2NY8HxAiEA4M5ATtAtUZU/fp30aot3QZBDHxM1ON1qHAHE1fjhvIc="}]},"maintainers":[{"name":"martypdx","email":"marty@martypdx.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/umami-0.0.0.tgz_1499624689128_0.24896189267747104"},"directories":{}},"0.1.0":{"name":"umami","version":"0.1.0","description":"Deliciously simple website stats","author":{"name":"Mike Cao","email":"mike@mikecao.com"},"license":"MIT","homepage":"https://github.com/mikecao/umami","repository":{"type":"git","url":"git+https://github.com/mikecao/umami.git"},"main":"index.js","bin":{"umami":"cli/index.js"},"scripts":{"dev":"next dev -p 8000","build":"next build","start":"next start","build-tracker":"rollup -c","build-schema":"dotenv prisma introspect","build-client":"dotenv prisma generate","create-account":"node cli/create-account.js"},"lint-staged":{"**/*.js":["prettier --write"],"**/*.css":["stylelint --fix","prettier --write"]},"husky":{"hooks":{"pre-commit":"lint-staged"}},"dependencies":{"@prisma/client":"2.2.2","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.14.0","detect-browser":"^5.1.1","dotenv":"^8.2.0","formik":"^2.1.5","geolite2-redist":"^1.0.7","is-localhost-ip":"^1.4.0","jose":"^1.27.2","maxmind":"^4.1.3","next":"9.3.5","next-cookies":"^2.0.3","node-fetch":"^2.6.0","promise-polyfill":"^8.1.3","react":"16.13.1","react-dom":"16.13.1","request-ip":"^2.1.3","unfetch":"^4.1.0","uuid":"^8.2.0","yargs":"^15.4.1"},"devDependencies":{"@prisma/cli":"2.2.2","@rollup/plugin-buble":"^0.21.3","@rollup/plugin-node-resolve":"^8.4.0","@rollup/plugin-replace":"^2.3.3","@svgr/webpack":"^5.4.0","dotenv-cli":"^3.2.0","eslint":"^7.2.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.3","eslint-plugin-react":"^7.20.0","eslint-plugin-react-hooks":"^4.0.4","husky":"^4.2.5","less":"^3.11.3","lint-staged":"^10.2.9","postcss-flexbugs-fixes":"^4.2.1","postcss-import":"^12.0.1","postcss-preset-env":"^6.7.0","prettier":"^2.0.5","prettier-eslint":"^10.1.1","rollup":"^2.21.0","rollup-plugin-terser":"^6.1.0","stylelint":"^13.6.0","stylelint-config-css-modules":"^2.2.0","stylelint-config-prettier":"^8.0.1","stylelint-config-recommended":"^3.0.0"},"gitHead":"a6975eceddeeb9fb282994b7c685223f3cc1945c","bugs":{"url":"https://github.com/mikecao/umami/issues"},"_id":"umami@0.1.0","_nodeVersion":"14.4.0","_npmVersion":"6.14.5","dist":{"integrity":"sha512-w43dCCLsTFE2hf7bWSQZl+LAdG3eIwmex82DjdVkNOLDUZtgNpH43WoXw4zZGYdsPY8m41lNInOMgC6SxsBYKw==","shasum":"4002ab28ff3aa6f79d1caa36e920871a47dddd7c","tarball":"https://registry.npmjs.org/umami/-/umami-0.1.0.tgz","fileCount":39,"unpackedSize":1340472,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfGm5fCRA9TVsSAnZWagAAEt8P/0YLGdCvUBJ2qf9kFH7l\nSzQAzaauzDIAjo9cnPcNoarAufZwjw+AWrb3aa95yOAjKYNnsxH3BDvDobQB\nuLOi9KDBaz1y9TG+fKA/D7gYFaqM6kEbJgEC+RW5j7TLdtcoL4KMZIRrLQBu\nEhOkVjdcL/Pf4+Id7yjsYm4F2E9gluoRmz2MGiQZn+FTF/WMyxrrWj3VYTeh\nkGtTJZH4gSnv2+n4W9AYJI3rj2594KH0ABvorUQrctsQA12bHcfyKBuLPah6\nTYIBbs4SgFo0QKKAIwPa+C13s8utwnbe05YPq6RQn0zNgSF1EoA74jH8TFH9\nbRhwhzGOS1ULgwrNZl+5zhApPF/2l2QKpZK8OxztFxUj3J9Ui/LJO/dGcBTi\nAiDdSwfiun7M0yt1KKdzdA42KtFNORllsask25UeBOjbbWeZoYQthgk9P2gm\n8eDdkqaJA0gVpW/m4sT2lAjSCs2z2apgAYnp2XV9WeWEuRfS4wrp/TlgHNy5\nG1OqZSdt9RTR66/83eGgBhcnHMq3QOYtUw3l/8l9WcUrGQ9DTlnSIGHrdWL7\nGjWnkdAxATncNexC2C402tLOzyZ3kxGAj+5hrkd+sW5KB+Li84S1ntJtR8n7\nekiNfiJiWW5tiDq1RWpfpLiz93/3YzcX9n0wQTsFOwI+V+Y1BaslrvZbUEdK\nEULg\r\n=dM10\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIE6tIf/A8ACIj83iXEgpxQOEtfvSr9SBDylJ555k3xIuAiBixO3AQ3Qp9QC+Lf601omKgl8tfobeJUGfd/GO7AKeqQ=="}]},"maintainers":[{"email":"mike@mikecao.com","name":"mikecao"}],"_npmUser":{"name":"mikecao","email":"mike@mikecao.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/umami_0.1.0_1595567710871_0.6820282211604207"},"_hasShrinkwrap":false},"2.10.0":{"name":"umami","version":"2.10.0","description":"A simple, fast, privacy-focused alternative to Google Analytics.","author":{"name":"Mike Cao","email":"mike@mikecao.com"},"license":"MIT","homepage":"https://umami.is","repository":{"type":"git","url":"git+https://github.com/umami-software/umami.git"},"scripts":{"dev":"next dev -p 3000","build":"npm-run-all check-env build-db check-db build-tracker build-geo build-app","start":"next start","build-docker":"npm-run-all build-db build-tracker build-geo build-app","start-docker":"npm-run-all check-db update-tracker start-server","start-env":"node scripts/start-env.js","start-server":"node server.js","build-app":"next build","build-components":"rollup -c rollup.components.config.mjs","build-tracker":"rollup -c rollup.tracker.config.mjs","build-db":"npm-run-all copy-db-files build-db-client","build-lang":"npm-run-all format-lang compile-lang clean-lang download-country-names download-language-names","build-geo":"node scripts/build-geo.js","build-db-schema":"prisma db pull","build-db-client":"prisma generate","update-tracker":"node scripts/update-tracker.js","update-db":"prisma migrate deploy","check-db":"node scripts/check-db.js","check-env":"node scripts/check-env.js","copy-db-files":"node scripts/copy-db-files.js","extract-messages":"formatjs extract \"src/{pages,components}/**/*.js\" --out-file build/messages.json","merge-messages":"node scripts/merge-messages.js","generate-lang":"npm-run-all extract-messages merge-messages","format-lang":"node scripts/format-lang.js","compile-lang":"formatjs compile-folder --ast build/messages public/intl/messages","clean-lang":"prettier --write ./public/intl/messages/*.json","check-lang":"node scripts/check-lang.js","download-country-names":"node scripts/download-country-names.js","download-language-names":"node scripts/download-language-names.js","change-password":"node scripts/change-password.js","lint":"next lint --quiet","prepare":"node -e \"if (process.env.NODE_ENV !== 'production'){process.exit(1)} \" || husky install","postbuild":"node scripts/postbuild.js"},"lint-staged":{"**/*.{js,jsx,ts,tsx}":["prettier --write","eslint"],"**/*.css":["stylelint --fix","prettier --write"],"**/*.json":["prettier --write"]},"cacheDirectories":[".next/cache"],"dependencies":{"@clickhouse/client":"^0.2.2","@fontsource/inter":"^4.5.15","@prisma/client":"5.7.0","@prisma/extension-read-replicas":"^0.3.0","@react-spring/web":"^9.7.3","@tanstack/react-query":"^5.12.2","@umami/prisma-client":"^0.13.0","@umami/redis-client":"^0.18.0","chalk":"^4.1.1","chart.js":"^4.2.1","chartjs-adapter-date-fns":"^3.0.0","classnames":"^2.3.1","colord":"^2.9.2","cors":"^2.8.5","cross-spawn":"^7.0.3","date-fns":"^2.23.0","date-fns-tz":"^1.1.4","dateformat":"^5.0.3","debug":"^4.3.4","del":"^6.0.0","detect-browser":"^5.2.0","dotenv":"^10.0.0","fs-extra":"^10.0.1","immer":"^9.0.12","ipaddr.js":"^2.0.1","is-ci":"^3.0.1","is-docker":"^3.0.0","is-localhost-ip":"^1.4.0","isbot":"^3.4.5","kafkajs":"^2.1.0","maxmind":"^4.3.6","md5":"^2.3.0","moment-timezone":"^0.5.35","next":"14.0.4","next-basics":"^0.39.0","node-fetch":"^3.2.8","npm-run-all":"^4.1.5","prisma":"5.7.0","react":"^18.2.0","react-basics":"^0.122.0","react-beautiful-dnd":"^13.1.0","react-dom":"^18.2.0","react-error-boundary":"^4.0.4","react-intl":"^6.5.5","react-simple-maps":"^2.3.0","react-use-measure":"^2.0.4","react-window":"^1.8.6","request-ip":"^3.3.0","semver":"^7.5.4","thenby":"^1.3.4","timezone-support":"^2.0.2","uuid":"^9.0.0","yup":"^0.32.11","zustand":"^4.3.8"},"devDependencies":{"@formatjs/cli":"^4.2.29","@netlify/plugin-nextjs":"^4.27.3","@rollup/plugin-alias":"^5.0.0","@rollup/plugin-commonjs":"^25.0.4","@rollup/plugin-json":"^6.0.0","@rollup/plugin-node-resolve":"^15.2.0","@rollup/plugin-replace":"^5.0.2","@svgr/rollup":"^8.1.0","@svgr/webpack":"^8.1.0","@types/node":"^20.9.0","@types/react":"^18.2.41","@types/react-dom":"^18.2.17","@types/react-window":"^1.8.8","@typescript-eslint/eslint-plugin":"^6.7.3","@typescript-eslint/parser":"^6.7.3","cross-env":"^7.0.3","esbuild":"^0.17.17","eslint":"^8.33.0","eslint-config-next":"^14.0.4","eslint-config-prettier":"^8.5.0","eslint-import-resolver-alias":"^1.1.2","eslint-plugin-import":"^2.26.0","eslint-plugin-prettier":"^4.0.0","extract-react-intl-messages":"^4.1.1","husky":"^8.0.3","lint-staged":"^14.0.1","postcss":"^8.4.31","postcss-flexbugs-fixes":"^5.0.2","postcss-import":"^15.1.0","postcss-preset-env":"7.8.3","postcss-rtlcss":"^4.0.1","prettier":"^2.6.2","prompts":"2.4.2","rollup":"^3.28.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-delete":"^2.0.0","rollup-plugin-dts":"^5.3.1","rollup-plugin-esbuild":"^5.0.0","rollup-plugin-node-externals":"^6.1.1","rollup-plugin-postcss":"^4.0.2","rollup-plugin-terser":"^7.0.2","stylelint":"^15.10.1","stylelint-config-css-modules":"^4.1.0","stylelint-config-prettier":"^9.0.3","stylelint-config-recommended":"^9.0.0","tar":"^6.1.2","ts-node":"^10.9.1","typescript":"^5.1.6"},"_id":"umami@2.10.0","gitHead":"dbb3801e6674b9e79e6da8fba5c7de06506e1181","bugs":{"url":"https://github.com/umami-software/umami/issues"},"_nodeVersion":"18.18.2","_npmVersion":"9.8.1","dist":{"integrity":"sha512-+lmrnV0751R6U2rkIgVAlE1nWI7yZawlMlJDguW9tlFacCKhnGeCyc7tCMIhNNYIiGIQy4DEX5IzJhm4b3+dPA==","shasum":"7aebe4918d6776d198ebe33cceb2b2227588be1f","tarball":"https://registry.npmjs.org/umami/-/umami-2.10.0.tgz","fileCount":1076,"unpackedSize":4117863,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBX06xCcj4bvvcA5fvqYQlB5CWSLE1y8dLHjmn7DSC+8AiBxIZqJjNHoynJH/8l7eR3Wnfd35Nb0kQwo1hqVqSLrvg=="}]},"_npmUser":{"name":"mikecao","email":"mike@mikecao.com"},"directories":{},"maintainers":[{"name":"mikecao","email":"mike@mikecao.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/umami_2.10.0_1707098673749_0.8203328733828392"},"_hasShrinkwrap":false}},"readme":"# umami\n\nUmami is a simple, fast, privacy-focused alternative to Google Analytics.\n\n## Getting started\n\nA detailed getting started guide can be found at [https://umami.is/docs/](https://umami.is/docs/)\n\n## Installing from source\n\n### Requirements\n\n- A server with Node.js version 16.13 or newer\n- A database. Umami supports [MySQL](https://www.mysql.com/) and [Postgresql](https://www.postgresql.org/) databases.\n\n### Install Yarn\n\n```\nnpm install -g yarn\n```\n\n### Get the source code and install packages\n\n```\ngit clone https://github.com/umami-software/umami.git\ncd umami\nyarn install\n```\n\n### Configure umami\n\nCreate an `.env` file with the following\n\n```\nDATABASE_URL=connection-url\n```\n\nThe connection url is in the following format:\n\n```\npostgresql://username:mypassword@localhost:5432/mydb\n\nmysql://username:mypassword@localhost:3306/mydb\n```\n\n### Build the application\n\n```bash\nyarn build\n```\n\nThe build step will also create tables in your database if you are installing for the first time. It will also create a login user with username **admin** and password **umami**.\n\n### Start the application\n\n```bash\nyarn start\n```\n\nBy default this will launch the application on `http://localhost:3000`. You will need to either\n[proxy](https://docs.nginx.com/nginx/admin-guide/web-server/reverse-proxy/) requests from your web server\nor change the [port](https://nextjs.org/docs/api-reference/cli#production) to serve the application directly.\n\n## Installing with Docker\n\nTo build the umami container and start up a Postgres database, run:\n\n```bash\ndocker compose up -d\n```\n\nAlternatively, to pull just the Umami Docker image with PostgreSQL support:\n\n```bash\ndocker pull ghcr.io/umami-software/umami:postgresql-latest\n```\n\nOr with MySQL support:\n\n```bash\ndocker pull ghcr.io/umami-software/umami:mysql-latest\n```\n\n## Getting updates\n\nTo get the latest features, simply do a pull, install any new dependencies, and rebuild:\n\n```bash\ngit pull\nyarn install\nyarn build\n```\n\nTo update the Docker image, simply pull the new images and rebuild:\n\n```bash\ndocker compose pull\ndocker compose up --force-recreate\n```\n\n## License\n\nMIT\n","maintainers":[{"name":"mikecao","email":"mike@mikecao.com"}],"time":{"modified":"2024-02-05T02:04:34.128Z","created":"2017-07-09T18:24:49.231Z","0.0.0":"2017-07-09T18:24:49.231Z","0.1.0":"2020-07-24T05:15:11.153Z","2.10.0":"2024-02-05T02:04:33.968Z"},"author":{"name":"Mike Cao","email":"mike@mikecao.com"},"license":"MIT","readmeFilename":"README.md","description":"A simple, fast, privacy-focused alternative to Google Analytics.","homepage":"https://umami.is","repository":{"type":"git","url":"git+https://github.com/umami-software/umami.git"},"bugs":{"url":"https://github.com/umami-software/umami/issues"}}