Developers Workshop¶
Welcome to the GeoNode Training Developers Workshop documentation v2.8.
This workshop will teach how to develop with and for the GeoNode software application. This module will introduce you to the components that GeoNode is built with, the standards that it supports and the services it provides based on those standards, and an overview its architecture.
- Prerequisites
- GeoNode is a web based GIS tool, and as such, in order to do development on GeoNode itself or to integrate it into your own application, you should be familiar with basic web development concepts as well as with general GIS concepts.
- Introduction to GeoNode development
- This module will introduce you to the components that GeoNode is built with, the standards that it supports and the services it provides based on those standards, and an overview its architecture.
- Pavement.py and Paver
- Here’s a list of Pavement tasks maintained by the GeoNode development team.
- Django Overview
This section introduces some basic concepts of Django, the Python based web framework on top of which GeoNode has been developed.
Django’s primary goal is to ease the creation of complex, database-driven websites. Django emphasizes reusability and “pluggability” of components, rapid development, and the principle of don’t repeat yourself. Python is used throughout, even for settings, files, and data models.
Django also provides an optional administrative create, read, update and delete interface that is generated dynamically through introspection and configured via admin models.
- Development Prerequisites and Core Modules
- This module will introduce you to the basic tools and skills required to start actively developing GeoNode.
- Install GeoNode for Development
This module shows a step-by-step guide for the setup of a GeoNode Development Environment on an Ubuntu system.
For other Linux distributions the commands are similar, the difference is mainly on the packages names.
Note
For Windows: (Windows Binary Installer)
- GeoNode debugging techniques
- GeoNode can be difficult to debug as there are several different components involved. This module shows some techniques to debug the different parts of GeoNode.
- GeoNode APIs
- This module provides an overview of the core modules and libraries used by GeoNode and teach to the user how to use them through some guided examples.
- Testing in GeoNode
- This section explain how to run the tests on GeoNode.
- Introduction to GeoNode Projects
GeoNode enables you to set up a complete site simply by installing the packages and adding your data.
If you want to create your own project based on GeoNode, there are a several options available that enable you to customize the look and feel of your GeoNode site.
You can add additional modules that are necessary for your own use case and to integrate your GeoNode project with other external sites and services.
- Make a GeoNode release
- Making a GeoNode release.