Umami is a simple, fast, privacy-focused alternative to Google Analytics.
Go to file
2020-09-03 08:53:39 -07:00
.github/workflows Build Docker image only on release 2020-09-02 21:48:04 +10:00
assets Toast notifications. 2020-08-31 15:57:59 -07:00
components Refresh should reset date range. 2020-09-03 08:43:18 -07:00
hooks Track query times. Updated refresh button. 2020-09-03 08:43:18 -07:00
lib All queries should use runQuery. 2020-09-03 08:43:17 -07:00
pages Error handling for queries. 2020-08-31 21:11:53 -07:00
prisma Enable public website sharing. 2020-08-15 01:17:15 -07:00
public Add tracker build to main build. 2020-08-22 22:03:39 -07:00
redux Track query times. Updated refresh button. 2020-09-03 08:43:18 -07:00
scripts Added useFetch hook. Updated database check. 2020-08-30 15:29:31 -07:00
sql Removed test code. 2020-08-28 22:30:04 -07:00
styles Show active visitor count. 2020-08-18 00:51:32 -07:00
tracker Allow custom events. 2020-09-03 08:53:39 -07:00
.dockerignore for better local building performance 2020-08-23 14:07:01 +12:00
.eslintrc.json Updated pages and referrer filters to merge urls. 2020-08-22 19:05:07 -07:00
.gitignore Add tracker build to main build. 2020-08-22 22:03:39 -07:00
.prettierignore Add indexes to tables. 2020-07-17 19:33:40 -07:00
.prettierrc.json Initial commit. 2020-07-17 01:03:38 -07:00
.stylelintrc.json Initial commit. 2020-07-17 01:03:38 -07:00
docker-compose.yml Add DATABASE_TYPE environment variable 2020-08-23 10:46:33 +10:00
Dockerfile Add DATABASE_TYPE environment variable 2020-08-23 10:46:33 +10:00
jsconfig.json Initial commit. 2020-07-17 01:03:38 -07:00
LICENSE Added license. 2020-08-17 00:05:57 -07:00
next.config.js Initial commit. 2020-07-17 01:03:38 -07:00
package.json Updated packages. Allow url in query strings. 2020-09-03 08:43:17 -07:00
postcss.config.js Initial commit. 2020-07-17 01:03:38 -07:00
README.md Updated pages and referrer filters to merge urls. 2020-08-22 19:05:07 -07:00
rollup.tracker.config.js Refactor do not track code. 2020-08-23 13:34:00 -07:00
yarn.lock Updated packages. Allow url in query strings. 2020-09-03 08:43:17 -07:00

umami

Umami is a simple, fast, website analytics alternative to Google Analytics.

Getting started

A detailed getting started guide can be found at https://umami.is/docs/

Installing from source

Requirements

  • A server with Node.js 10.13 or newer
  • A database (MySQL or Postgresql)

Get the source code and install packages

git clone https://github.com/mikecao/umami.git
cd umami
npm install

Create database tables

Umami supports MySQL and Postgresql. Create a database for your Umami installation and install the tables with the included scripts.

For MySQL:

mysql -u username -p databasename < sql/schema.mysql.sql

For Postgresql:

psql -h hostname -U username -d databasename -f sql/schema.postgresql.sql

This will also create a login account with username admin and password umami.

Configure umami

Create an .env file with the following

DATABASE_URL=(connection url)
HASH_SALT=(any random string)

The connection url is in the following format:

postgresql://username:mypassword@localhost:5432/mydb

mysql://username:mypassword@localhost:3306/mydb

The HASH_SALT is used to generate unique values for your installation.

Build the application

npm run build

Start the application

npm start

By default this will launch the application on http://localhost:3000. You will need to either proxy requests from your web server or change the port to serve the application directly.

Installing with Docker

To build the umami container and start up a Postgres database, run:

docker-compose up

License

MIT