Developing a new plugin for SNAP

I am happy to see an exclusive category for SNAP plugins in this forum. It is highly appreciated and helpful if the developers release a document to assist the beginners in developing python plugins for SNAP similar to the document released by QGIS( a widely-used open source GIS software) developers here and here for their software.

For instance, I am interested in developing a plugin and installing the same for SNAP software on my desktop and releasing it to the public. I have no experience in developing a plugin or software/application earlier. However, I work with python on a daily basis for various analyses and processing of satellite imagery and big data. Kindly let me know how easy it is to develop a plugin for one of the processing codes in python.

Thanks in advance.

Hi @SaiKiran
In our wiki we have some guides on how to develop for SNAP.
Developer Guide - SNAP - SNAP Wiki (atlassian.net)

We know, the documentation could be better. It will be improved in the future. For now, just ask in the forum if you think the documentation is missing information certain points.

The preferred language to write extensions for SNAP is Java. There is also a way to do it in Python, but this is not yet mature yet and has some issues.

1 Like

Thanks for the information, @marpet.
I will look into the attached document and give it a shot.

Hey @marpet
I noticed on this link that i require JDK 8 to be installed to get started building my own plugin, Is JDK 11 usable instead ?
I also noticed the snap-desktop-basic-simple template but again as you mentioned there isnt much documentation.
I was hoping to find a more comprehensive guide :sweat_smile:

Hi,

it is true, SNAP is not yet fully compatible with JDK11 or later. I haven’t checked for 9 and 10.
So, it is better to still use JDK8. Within the next year SNAP will be updated, so that also the more recent JDKs can be used.

The Develeoper Guide is what we currently have regarding developing plugins.
Developer Guide - SNAP - SNAP Wiki (atlassian.net)

Is you are missing something in particular just ask in the Development section of the forum.

There are also maven archetypes available.


In the readme.md it is explained how they can be used.
1 Like