Umami is a modern, privacy-focused alternative to Google Analytics. https://umami.is
Find a file
Mike Cao 581ddc0233
Some checks are pending
Create docker images / Build, push, and deploy (push) Waiting to run
Node.js CI / build (postgresql, 18.18, 10) (push) Waiting to run
Merge remote-tracking branch 'origin/dev' into dev
2025-09-30 16:18:48 -07:00
.github Merge branch 'master' into dev 2025-09-23 17:43:24 -07:00
.husky
cypress
db
podman
prisma
public
scripts
src Merge remote-tracking branch 'origin/dev' into dev 2025-09-30 16:18:48 -07:00
.dockerignore
.eslintignore
.eslintrc.json
.gitignore
.prettierignore
.prettierrc.json
.stylelintrc.json
app.json
cypress.config.ts
docker-compose.yml
Dockerfile
jest.config.ts
LICENSE
netlify.toml
next-env.d.ts
next.config.ts Merged nav menus. 2025-09-25 20:46:00 -07:00
package.components.json Added label to PageHeader. Style fixes. 2025-09-24 00:07:17 -07:00
package.json Updated pixel/link endpoints. Added name to rawQuery. 2025-09-30 16:11:21 -07:00
pnpm-lock.yaml Merge remote-tracking branch 'origin/dev' into dev 2025-09-30 16:18:48 -07:00
pnpm-workspace.yaml
postcss.config.js
README.md
rollup.tracker.config.js
tsconfig.json
tsconfig.prisma.json
tsup.config.js

Umami Logo

Umami

Umami is a simple, fast, privacy-focused alternative to Google Analytics.

GitHub Release MIT License Build Status Umami Demo


🚀 Getting Started

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


🛠 Installing from Source

Requirements

  • A server with Node.js version 18.18 or newer
  • A database. Umami supports MariaDB (minimum v10.5), MySQL (minimum v8.0) and PostgreSQL (minimum v12.14) databases.

Get the Source Code and Install Packages

git clone https://github.com/umami-software/umami.git
cd umami
pnpm install

Configure Umami

Create an .env file with the following:

DATABASE_URL=connection-url

The connection URL format:

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

Build the Application

pnpm run build

The build step will 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.

Start the Application

pnpm run 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 -d

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

docker pull docker.umami.is/umami-software/umami:postgresql-latest

Or with MySQL support:

docker pull docker.umami.is/umami-software/umami:mysql-latest

🔄 Getting Updates

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

git pull
pnpm install
pnpm run build

To update the Docker image, simply pull the new images and rebuild:

docker compose pull
docker compose up --force-recreate -d

🛟 Support

GitHub Twitter LinkedIn Discord