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

Hi Vasek,

thanks for setting up the demo module on GitHub!

To demonstrate how module authors can get credit by scientific citation, some kind of reference/howto describing how the integration of the GitHub project and the Zenodo data repositiory (https://www.zenodo.org/) can be achieved, as explained here: https://www.zenodo.org/login/?next=%2Faccount%2Fsettings%2Fgithub%2F https://guides.github.com/activities/citable-code/
By doing so, a persistent identifier (DOI) is assigned to the GRASS module codebase. Zenodo also offers a handy tool to provide citation strings for the modulde code in hundreds of citation styles.

Best regards,
Peter

<peter.loewe@gmx.de>

From: grass-user <grass-user-bounces@lists.osgeo.org> On Behalf Of Vaclav Petras
Sent: torsdag 30. januar 2020 02:31
To: grass-dev@lists.osgeo.org; GRASS user list <grass-user@lists.osgeo.org>
Subject: [GRASS-user] 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,

In this context we should probably also keep JOSS in mind and probably make devs aware of that possibility, including linking a JOSS paper to the repo. See presentation from FOSSDEM [1] for more background.

Question is, if it is possible to have the link on a module basis in grass-addons. Cause, I also think that getting stuff into grass-addons is important for the reasons Vaclav lists in the repo.

Cheers
Stefan

1: https://video.fosdem.org/2020/AW1.126/open_research_joss.webm

-----Original Message-----
From: "Peter Löwe" <peter.loewe@gmx.de>
Sent: tirsdag 4. februar 2020 11:24
To: grass-user@lists.osgeo.org
Cc: Stefan Blumentrath <Stefan.Blumentrath@nina.no>; wenzeslaus@gmail.com
Subject: [GRASS-user] Example project for a GRASS GIS module on GitHub

Hi Vasek,

thanks for setting up the demo module on GitHub!

To demonstrate how module authors can get credit by scientific citation, some kind of reference/howto describing how the integration of the GitHub project and the Zenodo data repositiory (https://www.zenodo.org/) can be achieved, as explained here: https://www.zenodo.org/login/?next=%2Faccount%2Fsettings%2Fgithub%2F https://guides.github.com/activities/citable-code/
By doing so, a persistent identifier (DOI) is assigned to the GRASS module codebase. Zenodo also offers a handy tool to provide citation strings for the modulde code in hundreds of citation styles.

Best regards,
Peter

<peter.loewe@gmx.de>

From: grass-user <grass-user-bounces@lists.osgeo.org> On Behalf Of Vaclav Petras
Sent: torsdag 30. januar 2020 02:31
To: grass-dev@lists.osgeo.org; GRASS user list <grass-user@lists.osgeo.org>
Subject: [GRASS-user] 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

Zenodo & JOSS in relation to r.example.plus: If you have idea on the text, please open a PR. I suggest adding it as a subsection of “What is next” and making the current content of that section a subsection as well.

As for the JOSS and grass-addons repo:

On Tue, Feb 4, 2020 at 8:25 AM Stefan Blumentrath <Stefan.Blumentrath@nina.no> wrote:

Hi,

In this context we should probably also keep JOSS in mind and probably make devs aware of that possibility, including linking a JOSS paper to the repo. See presentation from FOSSDEM [1] for more background.

Question is, if it is possible to have the link on a module basis in grass-addons.

What do you mean by a link? Does JOSS require the software to be in a separate repo?

Best,
Vaclav

Cause, I also think that getting stuff into grass-addons is important for the reasons Vaclav lists in the repo.

Cheers
Stefan

1: https://video.fosdem.org/2020/AW1.126/open_research_joss.webm

-----Original Message-----
From: “Peter Löwe” <peter.loewe@gmx.de>
Sent: tirsdag 4. februar 2020 11:24
To: grass-user@lists.osgeo.org
Cc: Stefan Blumentrath <Stefan.Blumentrath@nina.no>; wenzeslaus@gmail.com
Subject: [GRASS-user] Example project for a GRASS GIS module on GitHub

Hi Vasek,

thanks for setting up the demo module on GitHub!

To demonstrate how module authors can get credit by scientific citation, some kind of reference/howto describing how the integration of the GitHub project and the Zenodo data repositiory (https://www.zenodo.org/) can be achieved, as explained here: https://www.zenodo.org/login/?next=%2Faccount%2Fsettings%2Fgithub%2F https://guides.github.com/activities/citable-code/
By doing so, a persistent identifier (DOI) is assigned to the GRASS module codebase. Zenodo also offers a handy tool to provide citation strings for the modulde code in hundreds of citation styles.

Best regards,
Peter

<peter.loewe@gmx.de>

From: grass-user <grass-user-bounces@lists.osgeo.org> On Behalf Of Vaclav Petras
Sent: torsdag 30. januar 2020 02:31
To: grass-dev@lists.osgeo.org; GRASS user list <grass-user@lists.osgeo.org>
Subject: [GRASS-user] 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