O QGIS é um Sistema de Informações Geográficas de código aberto que atualmente é executado na maioria das plataformas Unix (incluindo macOS/OS X) e Windows. Desenvolvido usando o kit de ferramentas Qt (https://www.qt.io), é escrito principalmente nas linguagens C++ e Python. Isso significa que o QGIS parece rápido de usar e possui uma interface gráfica agradável e fácil de usar.
O código fonte do QGIS está disponível em https://github.com/qgis/QGIS. Se você deseja ajudar na correção de bugs ou na adição de novos recursos ao aplicativo, você é bem-vindo e pode contribuir livremente por meio de pull resquests. Você também pode entrar em contato com os outros desenvolvedores através da sua lista de discussão em https://lists.osgeo.org/mailman/listinfo/qgis-developer.
Além disso, escrevemos um breve Guia do desenvolvedor do QGIS para ajudá-lo na codificação do QGIS. Ele fornece regras, ferramentas e etapas para contribuir de maneira fácil e eficiente ao código QGIS e está disponível em https://docs.qgis.org. Você é encorajado a lê-lo.
QGIS possui uma infraestrutura de plu-gins. Você pode adicionar muitas novas funcionalidades escrevendo plu-gins. Esses plug-ins podem ser escritos em C++ ou em Python.
Se você deseja contribuir para o Projeto QGIS com seu plugin, é altamente recomendável ler o Guida do Desenvolvedor do QGIS em nosso site de documentação: https://docs.qgis.org
Acesse o repositório QGIS no GitHub em https://github.com/qgis/QGIS/
Faça um Fork para você. 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/
Copie sua cópia pessoal do repositório para seu sistema, e adicione no topo como mencionado no link disponível acima
Read the https://github.com/qgis/QGIS/blob/master/INSTALL.md about setting up the installation environment and make a compilation with ccache enabled.
Dentro da pasta QGIS:
cd src/plugins/
python plugin_builder.py
Agora siga as instruções no assistente de tela para criar uma pasta para o seu módulo. Depois que entrada pedida for dada, a pasta para o módulo é criado. Leia mais o README dento da pasta do módulo como criar um módulo.
Desenvolvendo o QGIS agora você também desenvolve o seu complemento, após começar o QGIS ative o complemento e veja como exibe o seu diálogo.
O QGIS também tem muito a oferecer aos desenvolvedores de python.
O QGIS possui ligações python para que você possa automatizar tarefas no QGIS via python. Fornecemos uma documentação para a API QGIS em https://qgis.org/pyqgis/
Você também pode dar uma olhada no Python Cookbook em nosso site de documentação: https://docs.qgis.org/
Particularmente interessado no desenvolvimento de plugins python, você pode encontrar algumas instruções em https://docs.qgis.org/latest/en/docs/pyqgis_developer_cookbook/plugins/index.html
Procurando exemplos de plugins python, consulte https://plugins.qgis.org