assets | ||
components | ||
hooks | ||
lib | ||
pages | ||
prisma | ||
public | ||
redux | ||
sql | ||
styles | ||
tracker | ||
.eslintrc.json | ||
.gitignore | ||
.prettierignore | ||
.prettierrc.json | ||
.stylelintrc.json | ||
jsconfig.json | ||
LICENSE | ||
next.config.js | ||
package.json | ||
postcss.config.js | ||
README.md | ||
rollup.tracker.config.js | ||
yarn.lock |
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/
Installation
Requirements
- A server with Node.js 10.13 or newer
- A database (MySQL or Postgresql)
Get the source code
git clone https://github.com/mikecao/umami.git
Go into the repo folder
cd umami
Install packages
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.
Generate database client
Depending on your database type, run the appropriate script.
For MySQL:
npm run build-mysql-client
For Postgresql:
npm run build-postgresql-client
Create a production build
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.
License
MIT