Go to file
2020-06-27 12:56:47 +02:00
.vscode MAPG-2 Init project MapGuesser 2020-05-17 19:29:06 +02:00
cache MAPG-89 add cache folder that can hold cache files 2020-06-27 00:44:38 +02:00
database MAPG-69 add new field to User 2020-06-21 15:12:44 +02:00
docker MAPG-183 tooling fixes 2020-06-27 00:38:19 +02:00
mail MAPG-164 show application's name from env variable 2020-06-22 21:06:15 +02:00
public MAPG-89 unify styles 2020-06-27 00:47:14 +02:00
scripts MAPG-89 install and update sh scripts to link views in non-DEV mode 2020-06-27 00:44:38 +02:00
src MAPG-180 don't buffer content output to variable 2020-06-27 12:56:47 +02:00
tests MAPG-177 add test for Model 2020-06-26 00:28:37 +02:00
views MAPG-180 ability to inline CSS and JS assets 2020-06-27 12:51:00 +02:00
.env.example MAPG-178 add GOOGLE_ANALITICS_ID to .env.example 2020-06-25 13:57:05 +02:00
.gitattributes MAPG-81 update .gitattributes to store PNG files with Git LFS 2020-05-30 23:16:31 +02:00
.gitignore MAPG-94 save test results and save only the result xml as artifact 2020-06-25 10:16:28 +02:00
bitbucket-pipelines.yml MAPG-94 save test results and save only the result xml as artifact 2020-06-25 10:16:28 +02:00
composer.json MAPG-94 add PHPUnit to composer.json 2020-06-25 00:27:01 +02:00
composer.lock MAPG-94 add PHPUnit to composer.json 2020-06-25 00:27:01 +02:00
docker-compose.yml MAPG-179 export MariaDB server port 2020-06-25 15:30:38 +02:00
LICENSE.md MAPG-78 change license to AGPL and include the license 2020-05-30 01:42:14 +02:00
main.php MAPG-184 measure runtime and show in web output 2020-06-27 01:19:17 +02:00
mapg MAPG-89 add command that can link views from command line 2020-06-27 00:44:38 +02:00
README.md MAPG-179 add basic stuff to the README 2020-06-25 15:30:21 +02:00
USED_SOFTWARE MAPG-73 add license of Boostrap Icons 2020-05-30 17:39:45 +02:00
web.php MAPG-156 implement user deletion 2020-06-25 20:26:51 +02:00

MapGuesser

This is the MapGuesser Application project. This is a game about guessing where you are based on a street view panorama - inspired by existing applications.

Installation

Clone the Git repository

The first step is obviously cloning the repository to your machine:

git clone https://bitbucket.org/esoko/mapguesser.git

All the commands listed here should be executed from the repository root.

(Optional) Setup Docker stack

The easiest way to build up a fully working application with web server and database is to use Docker Compose with the included docker-compose.yml.

All you have to do is executing the following command:

docker-compose up -d

Attach shell to the container of mapguesser_app. All of the following commands should be executed there.

If you don't use the Docker stack you need to install your environment manually. Check docker-compose.yml and docker/Dockerfile to see the system requirements.

Initialize project

This command installes all of the Composer requirements and creates a copy of the example .env file.

composer create-project

Set environment variables

The .env file contains several environment variables that are needed by the application to work properly. These should be configured for your environment.

You should set here the API keys that enable playing the game. Without these API keys the application cannot work well. To get Google API keys visit this page: https://console.developers.google.com/

One very important variable is DEV. This indicates that the application operates in development (staging) and not in produciton mode.

If you install the application in the Docker stack for development (staging) environment, only the variables for external dependencies (API keys, map attribution, etc.) should be adapted. All other variables (for DB connection, static root, mailing, etc.) are fine with the default value.

Finalize installation

After you set the environment variables in the .env file, execute the following command:

scripts/install.sh

And you are done! The application is ready to use and develop.

If you installed it in the Docker stack, you can reach it on http://localhost. The mails that are sent by the application can be found on http://localhost:8080/. If needed, the database server can be directly reached on localhost:3306.


License: GNU AGPL 3.0. Full license text can be found in file LICENSE.