Programming language: PHP
Tags: MapBBCodeShare     Maps And Global Positioning System (GPS)    
Latest version: v0.6

μlogger alternatives and similar software solutions

Based on the "MapBBCodeShare" category

Do you think we are missing an alternative of μlogger or a related project?

Add another 'MapBBCodeShare' Software solution


ulogger_logo_smallμlogger   Build Status

This is a web application for real-time collection of geolocation data, tracks viewing and management. Together with a dedicated μlogger mobile client it may be used as a complete self hosted server–client solution for logging and monitoring users' geolocation.

Live demo:


  • PHP 5.5 (5.4 with password_compat)
  • PHP extensions: ctype, json, pdo (with respective drivers), session, simplexml, xmlwriter, xdebug (only for tests)
  • MySQL, PostgreSQL or SQLite (over PDO driver)
  • browser with javascript enabled, cookies for authentication and saving preferences


  • simple
  • allows live tracking
  • track statistics
  • altitudes graph
  • multiple users
  • user authentication
  • Google Maps
  • OpenLayers (OpenStreet and other layers)
  • ajax
  • user preferences stored in cookies
  • simple admin menu
  • export tracks to gpx and kml
  • import tracks from gpx


  • Download zipped archive or clone the repository on your computer
  • Move it to your web server directory (unzip if needed)
  • Create database and database user (at least SELECT, INSERT, UPDATE, DELETE privileges, CREATE, DROP for setup script, SEQUENCES for postgreSQL)
  • Create a copy of config.default.php and rename it to config.php. Customize it and add database credentials
  • Edit scripts/setup.php script, enable it by setting $enabled value to true
  • Make sure you have a web server running with PHP and chosen database
  • Open http://YOUR_HOST/ulogger-server/scripts/setup.php page in your browser
  • Follow instructions in setup script. It will add database tables and set up your μlogger user
  • Remember to remove or disable scripts/setup.php script
  • Log in with your new user on http://YOUR_HOST/ulogger-server/
  • You may also want to set your new user as an admin in config file.
  • Folders .docker/ and .tests/ as well as composer files are needed only for development. May be safely removed.


  • Run docker run --name ulogger -p 8080:80 -d bfabiszewski/ulogger and access http://localhost:8080 in your browser. Log in with admin:admin credentials and change default password.
  • Optional configuration options with ENV variables, for list see Dockerfile. The variables correspond to main μlogger configuration parameteres.
  • For example: docker run --name ulogger -e ULOGGER_LANG="pl" -p 8080:80 -d bfabiszewski/ulogger.
  • You may also build the image yourself. Run docker build . from the root folder where Dockerfile reside. There are optional build-time arguments that allow you to set default database passwords for root and ulogger users.
  • For example: docker build --build-arg DB_ROOT_PASS=secret1 --build-arg DB_USER_PASS=secret2 --build-arg DB_DRIVER=sqlite ..


  • Install tests dependecies.
    • composer install
  • Integration tests may be run against docker image. We need exposed http and optionally database ports (eg. mapped to localhost 8080 and 8081). Below example for MySQL setup.
    • docker build -t ulogger .
    • docker run -d --name ulogger -p 8080:80 -p 8081:3306 --expose 3306 -e ULOGGER_ENABLE_SETUP=1 ulogger
  • Use environment variables (or create .env file in .tests/ folder) to set up connection details (below database credentials are docker defaults)
    • DB_DSN="mysql:host=;port=8081;dbname=ulogger;charset=utf8"
    • DB_USER=ulogger
    • DB_PASS=secret2
    • ULOGGER_URL=""
  • Run tests
    • ./vendor/bin/phpunit -c .tests/phpunit.xml


  • improve track editing
  • track display filters (accurracy, provider)
  • improve interface on mobile devices


  • translations may be contributed via Transifex.

Donate paypal
Donate bitcoin bc1qt3uwhze9x8tj6v73c587gprhufg9uur0rzxhvh
Donate ethereum 0x100C31C781C8124661413ed6d1AA9B1e2328fFA2


*Note that all licence references and agreements mentioned in the μlogger README section above are relevant to that project's source code only.