Introduction

This book is targeted at Mapbender developers and will cover useful topics not needed by administrators or users of Mapbender installations.

Things to consider

There are a couple of things you should be familiar with in order to contribute to Mapbender:

  • Object-Orientated PHP: We’re using PHP which offers full object orientation.

  • Symfony: This is what we build upon. So read The Book to learn more about Symfony.

  • JavaScript: We use jQuery a lot and especially the jQuery UI widget factory. These are essential to understand to write maintainable JavaScript code.

Installation

The installation procedure from Git is described under Git-based installation.

Modules and bundles

Please refer to the respective sections in the CONTRIBUTING.md guide to understand what modules and what bundles are, and how the latter can be created.

Twig

Symfony follows the template approach and we use this in Mapbender. Symfony uses a templating engine to generate HTML, CSS or other content. A template is a text file that can generate any text based format like HTML, XML. It is used to express presentation and not programm logic. You can use them to create a layout. You can create a base layout and then overwrite or append any of your layout blocks with individual templates. Read more about Templates in Mapbender at How to create your own Template? or in the Contributing Guide and find a good introduction about Twig in the Symfony Template documentation.