Umami is a simple, fast, privacy-focused alternative to Google Analytics.
Go to file
2021-12-26 08:12:49 +07:00
.github Update docker login 2021-04-08 21:49:41 -07:00
.husky Fix build issues. 2021-11-22 14:53:36 -08:00
assets Referrer filtering. 2021-11-21 22:00:14 -08:00
components draft: implement realtime current users 2021-12-26 08:01:57 +07:00
hooks Added helper methods for locales. 2021-11-20 17:18:25 -08:00
lang Updated lang strings. 2021-11-20 17:02:24 -08:00
lib Fix build issues. 2021-11-22 14:53:36 -08:00
pages Referrer filtering. 2021-11-21 22:00:14 -08:00
prisma Change to synchronous password hashing. 2021-05-23 17:29:27 -07:00
public Added vi-VN language support. 2021-11-20 15:28:45 -08:00
redux Created share token hook. 2020-10-11 02:29:55 -07:00
scripts Change to synchronous password hashing. 2021-05-23 17:29:27 -07:00
sql Fix charset issues on mySQL (fixes #388) 2020-11-28 00:42:00 +01:00
styles Switch to system font stacks. Closes #850. 2021-11-20 15:54:45 -08:00
tracker QoL changes on tracker 2021-11-08 15:01:35 -04:00
.dockerignore for better local building performance 2020-08-23 14:07:01 +12:00
.eslintrc.json Fix build issues. 2021-11-22 14:53:36 -08:00
.gitignore Fix build issues. 2021-11-22 14:53:36 -08: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
app.json Added app.json for heroku 2021-11-01 18:19:48 +05:30
docker-compose.yml Consider adding restart policy to docker-compose.yml 2021-07-10 17:05:01 +08:00
Dockerfile Updated node version. 2021-11-21 23:22:42 -08:00
jsconfig.json Initial commit. 2020-07-17 01:03:38 -07:00
lang-ignore.json Added Czech language. 2020-10-22 10:36:08 -07:00
LICENSE Added license. 2020-08-17 00:05:57 -07:00
next.config.js Fix build issues. 2021-11-22 14:53:36 -08:00
package.json Fix build issues. 2021-11-22 14:53:36 -08:00
postcss.config.js add rtl support 2021-05-13 09:15:37 +03:00
Procfile Add Procfile to tell Heroku how to start the app 2020-10-25 22:58:56 +00:00
README.md add info for development 2021-12-26 08:12:49 +07:00
rollup.tracker.config.js Updated api fetch to return an object. 2020-09-30 15:14:44 -07:00
yarn.lock Updated lock file. 2021-11-22 15:13:32 -08: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 12 or newer
  • A database (MySQL or Postgresql)

Get the source code and install packages

git clone https://github.com/mikecao/umami.git
cd umami
yarn

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

For development purpose, you need to build first that is because the application need to prepare language and geo setting.

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

Alternatively, to pull just the Umami Docker image with PostgreSQL support:

docker pull ghcr.io/mikecao/umami:postgresql-latest

Or with MySQL support:

docker pull ghcr.io/mikecao/umami:mysql-latest

Getting updates

To get the latest features, simply do a pull, install any new dependencies, and rebuild:

git pull
npm install
npm run build

License

MIT