Development in QGIS

Core Development

QGIS is an Open Source Geographic Information System that currently runs on most Unix platforms (macOS/OS X included) and Windows. Developed using the Qt toolkit (https://www.qt.io), it’s mainly written in C++ and Python languages. This means that QGIS feels snappy to use and has a pleasing, easy to use graphical user interface.

QGIS source code is available at https://github.com/qgis/QGIS. If you wish to help on bug fixing or adding new features to the application, you are most welcome and can freely contribute via pull requests. You can also get in touch with the other developers through their mailing list at https://lists.osgeo.org/mailman/listinfo/qgis-developer.

Beside this, we’ve written a short QGIS Developers Guide to help you in QGIS coding. It provides rules, tools and steps to easily and efficiently contribute to QGIS code and is available at https://docs.qgis.org. You are warmly encouraged to read it.

Desenvolvimento de Módulos (Plug-ins)

O QGIS tem uma infraestrutura de módulos. Pode adicionar muitas das novas funcionalidades escrevendo os seus próprios módulos. Estes módulos podem ser escritos em C ++ ou Python.

If you want to contribute to QGIS Project with your plugin, it’s highly recommended to read the QGIS Developers Guide at our documentation website: https://docs.qgis.org

Desenvolver Módulos em C++

Preparando o ambiente de desenvolvimento e configurando o repositório

  1. Go to the QGIS repository in GitHub at https://github.com/qgis/QGIS/
  2. Faça um Fork para si. Aprenda mais sobre forking e mantenha seu repositório sempre sincronizado com o repositório de desenvolvimento em http://help.github.com/fork-a-repo/
  3. Faça um clone da sua cópia pessoal do repositório para seu sistema, e adicione no topo como mencionado no link disponível acima
  4. Leia https://github.com/qgis/QGIS/blob/master/INSTALL como configurar o ambiente de instalação e fazer uma compilação com o ccache ativado.

Configurar o Diretório do Módulo

Dentro da pasta QGIS:

cd src/plugins/
python plugin_builder.py

Agora siga as instruções no assistente para criar uma pasta para o seu módulo. Após introduzir os dados, é crida a pasta para o módulo. Leia o ficheiro README dento da pasta do módulo para saber como criar um módulo.

Desenvolvendo o QGIS agora também irá desenvolver o seu módulo, após começar o QGIS ative o módulo para o ver e mostrar a sua janela.

Desenvolver um Módulo em Python

QGIS has a lot to offer to python developers too.

QGIS has python bindings so you can automate tasks in QGIS via python. We provide a documentation for QGIS API at https://qgis.org/pyqgis/

You can also have a look into the Python Cookbook in our Documentation site: https://docs.qgis.org/

Particularly interested in python plugin development, you can find some instructions at https://docs.qgis.org/latest/en/docs/pyqgis_developer_cookbook/plugins/index.html

Looking for examples of python plugins, see https://plugins.qgis.org