This is an open source reimplementation of (most of) the proprietary WorkAdventure Admin Services.
The software package distributed here is an open-source reimplementation of the proprietary administration services of WorkAdventure. It contains almost all features of the proprietary admin services (it is not possible to enforce a maximum number of people on a map or to report other users. Also you can only set up one world.). Furthermore, a web UI is provided which makes it easier to modify and add data about users, maps and textures.
The administration API calls are provided and answered in the code within the src/api
directory. The code for the web UI relies mainly in src/js/snippets
and src/snippets
directories.
In order to use this project, you must have administration rights to a self-hosted WorkAdventure instance (community version) . We use Docker for providing the services (see setup below). Furthermore, we assume that you use Traefik as reverse proxy. If you do not use Traefik, you have to drop the containers' labels and provide the routing information according to the software you use.
In order to run the administration services, four Docker containers have to be created:
- A database service (mongodb) to store user data persistently.
- A PHP container for running the PHP code
- A composer container to downloading the PHP and web UI dependencies.
- An HTTP server for hosting the files for the API and the web UI.
We use docker-compose for this. See the docker-compose.template.yaml
file for a base compose configuration you can use for your setup. In the .env.example
file you can find the additional environment variables which have to be declared for running the admin services. Afterwards, add the containers which are being exposed as dependencies to your Traefik container.
First of all, the containers have to be set up. Then, start them and navigate to the URL under which the code is hosted (https://YOUR-DOMAIN/admin/
if you did not alter the labels). If you log in the first time to the web UI, a user account is created with the provided credentials. Currently it is not possible to create multiple user accounts.
Within the web UI, you can set up maps, users and textures.
This software is distributed under same license as WorkAdventure (see here).
Currently, the targeted version of WorkAdventure is 1.19. The contents of this repository are used in production with WorkAdventure 1.19.7.