[GRASS-dev] Example project for a GRASS GIS module on GitHub

Dear users and contributors,

I’ve created an example project (repository) on GitHub. It is a GRASS GIS module written in Python which simply adds two raster maps together. It uses GitHub Actions to build the module and publish its documentation as a website (using GitHub Pages).

https://github.com/wenzeslaus/r.example.plus

This is based on my earlier work on an example project on GitLab [1] and includes several improvements and changes:

  • There is a test suite included with couple of test functions.

  • It uses Black for code formatting (assuming author runs it manually).

  • Repository is marked as a template (see the big “Use this template” button).

  • GitHub Actions are used for:

  • compiling the module and running tests,

  • checking code quality with Flake8 and Pylint, and

  • checking code style with Black.

  • GitHub Actions are now used for publishing documentation (done by GitLab CI before).

  • Option names now follow GRASS GIS standards more.

  • More documentation in the code and on how to use the code.

  • Badges are now in the README file (GitLab had those as project properties).

Otherwise, I hope the project should describe itself and if something is missing or is not documented enough, please open an issue or a pull request.

Best,
Vaclav

PS: We can discuss on grass-dev if this should go under some organization and how to improve the “what’s next” part [2].

[1] https://lists.osgeo.org/pipermail/grass-dev/2018-November/090438.html
[2] https://github.com/wenzeslaus/r.example.plus#what-is-next

Hi,

Great work, Vasek!

I found the gitlab version already very useful and I can just recommend it for any addon-dev to use as a starting point!

Esp. for beginners and autodidacts like me it is very valuable to see everything (and esp. the manual) checked, so a working version can be finally submitted to grass-addons.

In other words, r.example.plus is a perfect sandbox!

Cheers

Stefan

···

Dear users and contributors,

I’ve created an example project (repository) on GitHub. It is a GRASS GIS module written in Python which simply adds two raster maps together. It uses GitHub Actions to build the module and publish its documentation as a website (using GitHub Pages).

https://github.com/wenzeslaus/r.example.plus

This is based on my earlier work on an example project on GitLab [1] and includes several improvements and changes:

  • There is a test suite included with couple of test functions.

  • It uses Black for code formatting (assuming author runs it manually).

  • Repository is marked as a template (see the big “Use this template” button).

  • GitHub Actions are used for:

  • compiling the module and running tests,

  • checking code quality with Flake8 and Pylint, and

  • checking code style with Black.

  • GitHub Actions are now used for publishing documentation (done by GitLab CI before).

  • Option names now follow GRASS GIS standards more.

  • More documentation in the code and on how to use the code.

  • Badges are now in the README file (GitLab had those as project properties).

Otherwise, I hope the project should describe itself and if something is missing or is not documented enough, please open an issue or a pull request.

Best,

Vaclav

PS: We can discuss on grass-dev if this should go under some organization and how to improve the “what’s next” part [2].

[1] https://lists.osgeo.org/pipermail/grass-dev/2018-November/090438.html

[2] https://github.com/wenzeslaus/r.example.plus#what-is-next