Lightweight open source software that allows you to create statistics and dashboards freely regardless of your data source. http://urungi.org
- Centralize: Connect Urungi with any SQL data source. All your stats will end up in one place.
- Analyze: Explore and define your views and reports on your data according to your needs and the expectations of your users.
- Share: Create dashboards to visualize and display your data.
- Supported databases - PostgreSQL, MySQL, MS SQL Server, Oracle
-
Install the requirements listed above
-
Clone the github repository
git clone https://github.com/biblibre/urungi.git cd urungi
-
Download and install dependencies
# In development environment npm ci # In production environment npm ci --only=production
-
Run MongoDB migrations
# In development environment npx migrate-mongo up # In production environment NODE_ENV=production npx migrate-mongo up
-
(Optional but recommended) Create a local config file and change the session's secret (see Configuration)
Urungi uses config to manage its configuration files.
You can change the configuration by creating a file in config/
directory named
local-{env}.js
(where {env} is one of: production
, development
) and
overriding any properties defined in config/default.js
More info at https://github.com/lorenwest/node-config/wiki/Configuration-Files
If you are going to use oracle connections, Oracle Client libraries must be installed. To get libraries, install an Instant Client Basic or Basic Light package from https://www.oracle.com/database/technologies/instant-client/downloads.html
Installation instructions: https://oracle.github.io/node-oracledb/INSTALL.html
-
Launch the server
npm start
-
Point your browser to your ip/server name (eg. http://localhost:8080)
-
Enter the credentials
- Username:
administrator
- Password:
urungi
- Username:
-
Enjoy!!!
To upgrade Urungi to the latest version, follow these steps:
-
Update sources
git pull --rebase
-
Update dependencies
# In development environment npm ci # In production environment npm ci --only=production
-
Update database
# In development environment npx migrate-mongo up # In production environment NODE_ENV=production npx migrate-mongo up
-
Restart the server
To run the tests:
npm test
Some tests need SQL databases to connect to. To run those tests, copy config/test.js to config/local-test.js and modify the configured datasources accordingly. The 'status' property determines if the corresponding tests will be executed or not.
Before executing tests, the latest version of MongoDB will be downloaded, and each test file will get its own instance of MongoDB running with the in-memory storage engine. This allows tests to run in parallel and ease testing with different versions of MongoDB.
By default, MongoDB binaries are saved inside node_modules
directory, which
is deleted each time you call npm ci
. To avoid re-downloading MongoDB
binaries, use a different download directory by setting environment variable
MONGOMS_DOWNLOAD_DIR
. For instance
export MONGOMS_DOWNLOAD_DIR=$HOME/.cache/mongodb-memory-server/mongodb-binaries
Or you can avoid the download by using your already installed MongoDB server
export MONGOMS_SYSTEM_BINARY=/usr/bin/mongod
All options are described at https://github.com/nodkz/mongodb-memory-server#options-which-can-be-set-via-environment-variables