From 4bc968f125648f513a1a50f648bd22322f089085 Mon Sep 17 00:00:00 2001 From: Ernest Guevarra Date: Sat, 30 Mar 2024 22:13:06 +0000 Subject: [PATCH] refresh repository --- .github/CODE_OF_CONDUCT.md | 126 +++++++++++++++++++++++++++ .github/CONTRIBUTING.md | 35 ++++++++ .github/workflows/R-CMD-check.yaml | 50 +++++++++++ .github/workflows/pkgdown.yaml | 48 ++++++++++ .github/workflows/test-coverage.yaml | 32 +++++-- .gitignore | 1 + DESCRIPTION | 4 +- R/bangsa_get.R | 4 +- README.Rmd | 43 ++++++--- README.md | 90 +++++++++++++++---- inst/CITATION | 16 ++++ man/bangsa_ls.Rd | 2 +- man/openbangsamoro.Rd | 2 +- pkgdown/_pkgdown.yml | 24 +++-- 14 files changed, 429 insertions(+), 48 deletions(-) create mode 100644 .github/CODE_OF_CONDUCT.md create mode 100644 .github/CONTRIBUTING.md create mode 100644 .github/workflows/R-CMD-check.yaml create mode 100644 .github/workflows/pkgdown.yaml create mode 100644 inst/CITATION diff --git a/.github/CODE_OF_CONDUCT.md b/.github/CODE_OF_CONDUCT.md new file mode 100644 index 0000000..361d8bd --- /dev/null +++ b/.github/CODE_OF_CONDUCT.md @@ -0,0 +1,126 @@ +# Contributor Covenant Code of Conduct + +## Our Pledge + +We as members, contributors, and leaders pledge to make participation in our +community a harassment-free experience for everyone, regardless of age, body +size, visible or invisible disability, ethnicity, sex characteristics, gender +identity and expression, level of experience, education, socio-economic status, +nationality, personal appearance, race, caste, color, religion, or sexual +identity and orientation. + +We pledge to act and interact in ways that contribute to an open, welcoming, +diverse, inclusive, and healthy community. + +## Our Standards + +Examples of behavior that contributes to a positive environment for our +community include: + +* Demonstrating empathy and kindness toward other people +* Being respectful of differing opinions, viewpoints, and experiences +* Giving and gracefully accepting constructive feedback +* Accepting responsibility and apologizing to those affected by our mistakes, + and learning from the experience +* Focusing on what is best not just for us as individuals, but for the overall + community + +Examples of unacceptable behavior include: + +* The use of sexualized language or imagery, and sexual attention or advances of + any kind +* Trolling, insulting or derogatory comments, and personal or political attacks +* Public or private harassment +* Publishing others' private information, such as a physical or email address, + without their explicit permission +* Other conduct which could reasonably be considered inappropriate in a + professional setting + +## Enforcement Responsibilities + +Community leaders are responsible for clarifying and enforcing our standards of +acceptable behavior and will take appropriate and fair corrective action in +response to any behavior that they deem inappropriate, threatening, offensive, +or harmful. + +Community leaders have the right and responsibility to remove, edit, or reject +comments, commits, code, wiki edits, issues, and other contributions that are +not aligned to this Code of Conduct, and will communicate reasons for moderation +decisions when appropriate. + +## Scope + +This Code of Conduct applies within all community spaces, and also applies when +an individual is officially representing the community in public spaces. +Examples of representing our community include using an official e-mail address, +posting via an official social media account, or acting as an appointed +representative at an online or offline event. + +## Enforcement + +Instances of abusive, harassing, or otherwise unacceptable behavior may be +reported to the community leaders responsible for enforcement at ernest@guevarra.io. +All complaints will be reviewed and investigated promptly and fairly. + +All community leaders are obligated to respect the privacy and security of the +reporter of any incident. + +## Enforcement Guidelines + +Community leaders will follow these Community Impact Guidelines in determining +the consequences for any action they deem in violation of this Code of Conduct: + +### 1. Correction + +**Community Impact**: Use of inappropriate language or other behavior deemed +unprofessional or unwelcome in the community. + +**Consequence**: A private, written warning from community leaders, providing +clarity around the nature of the violation and an explanation of why the +behavior was inappropriate. A public apology may be requested. + +### 2. Warning + +**Community Impact**: A violation through a single incident or series of +actions. + +**Consequence**: A warning with consequences for continued behavior. No +interaction with the people involved, including unsolicited interaction with +those enforcing the Code of Conduct, for a specified period of time. This +includes avoiding interactions in community spaces as well as external channels +like social media. Violating these terms may lead to a temporary or permanent +ban. + +### 3. Temporary Ban + +**Community Impact**: A serious violation of community standards, including +sustained inappropriate behavior. + +**Consequence**: A temporary ban from any sort of interaction or public +communication with the community for a specified period of time. No public or +private interaction with the people involved, including unsolicited interaction +with those enforcing the Code of Conduct, is allowed during this period. +Violating these terms may lead to a permanent ban. + +### 4. Permanent Ban + +**Community Impact**: Demonstrating a pattern of violation of community +standards, including sustained inappropriate behavior, harassment of an +individual, or aggression toward or disparagement of classes of individuals. + +**Consequence**: A permanent ban from any sort of public interaction within the +community. + +## Attribution + +This Code of Conduct is adapted from the [Contributor Covenant][homepage], +version 2.1, available at +. + +Community Impact Guidelines were inspired by +[Mozilla's code of conduct enforcement ladder][https://github.com/mozilla/inclusion]. + +For answers to common questions about this code of conduct, see the FAQ at +. Translations are available at . + +[homepage]: https://www.contributor-covenant.org diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md new file mode 100644 index 0000000..d357ba1 --- /dev/null +++ b/.github/CONTRIBUTING.md @@ -0,0 +1,35 @@ +# Contributing + +## Bugs + +* Submit an issue on the [issues page](https://github.com/panukatan/openbangsamoro/issues) + +## Code contributions + +* Fork this repository to your Github account + +* Clone your version on your account down to your machine from your account + +``` +git clone https://github.com//openbangsamoro.git +``` + +* Make sure to track progress upstream i.e., on our version of `openbangsamoro` +at `panukatan/openbangsamoro`, by doing + +``` +git remote add upstream https://github.com/panukatan/openbangsamoro.git +``` + +* Before making changes make sure to pull changes in from `upstream` by doing +either `git fetch upstream` then merge later or `git pull upstream` to fetch +and merge in one step + +* Make your changes on a new feature branch + +* Please write a test or tests for your changes if they affect code and not just +documentation + +* Push up changes to your account + +* Submit a pull request at `panukatan/openbangsamoro` diff --git a/.github/workflows/R-CMD-check.yaml b/.github/workflows/R-CMD-check.yaml new file mode 100644 index 0000000..14159b7 --- /dev/null +++ b/.github/workflows/R-CMD-check.yaml @@ -0,0 +1,50 @@ +# Workflow derived from https://github.com/r-lib/actions/tree/v2/examples +# Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help +on: + push: + branches: [main, master] + pull_request: + branches: [main, master] + +name: R-CMD-check + +jobs: + R-CMD-check: + runs-on: ${{ matrix.config.os }} + + name: ${{ matrix.config.os }} (${{ matrix.config.r }}) + + strategy: + fail-fast: false + matrix: + config: + - {os: macos-latest, r: 'release'} + - {os: windows-latest, r: 'release'} + - {os: ubuntu-latest, r: 'devel', http-user-agent: 'release'} + - {os: ubuntu-latest, r: 'release'} + - {os: ubuntu-latest, r: 'oldrel-1'} + + env: + GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} + R_KEEP_PKG_SOURCE: yes + + steps: + - uses: actions/checkout@v4 + + - uses: r-lib/actions/setup-pandoc@v2 + + - uses: r-lib/actions/setup-r@v2 + with: + r-version: ${{ matrix.config.r }} + http-user-agent: ${{ matrix.config.http-user-agent }} + use-public-rspm: true + + - uses: r-lib/actions/setup-r-dependencies@v2 + with: + extra-packages: any::rcmdcheck + needs: check + + - uses: r-lib/actions/check-r-package@v2 + with: + upload-snapshots: true + build_args: 'c("--no-manual","--compact-vignettes=gs+qpdf")' diff --git a/.github/workflows/pkgdown.yaml b/.github/workflows/pkgdown.yaml new file mode 100644 index 0000000..a7276e8 --- /dev/null +++ b/.github/workflows/pkgdown.yaml @@ -0,0 +1,48 @@ +# Workflow derived from https://github.com/r-lib/actions/tree/v2/examples +# Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help +on: + push: + branches: [main, master] + pull_request: + branches: [main, master] + release: + types: [published] + workflow_dispatch: + +name: pkgdown + +jobs: + pkgdown: + runs-on: ubuntu-latest + # Only restrict concurrency for non-PR jobs + concurrency: + group: pkgdown-${{ github.event_name != 'pull_request' || github.run_id }} + env: + GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} + permissions: + contents: write + steps: + - uses: actions/checkout@v4 + + - uses: r-lib/actions/setup-pandoc@v2 + + - uses: r-lib/actions/setup-r@v2 + with: + use-public-rspm: true + + - uses: r-lib/actions/setup-r-dependencies@v2 + with: + extra-packages: any::pkgdown, local::. + needs: website + + - name: Build site + run: pkgdown::build_site_github_pages(new_process = FALSE, install = FALSE) + shell: Rscript {0} + + - name: Deploy to GitHub pages 🚀 + if: github.event_name != 'pull_request' + uses: JamesIves/github-pages-deploy-action@v4.5.0 + with: + clean: false + branch: gh-pages + folder: docs diff --git a/.github/workflows/test-coverage.yaml b/.github/workflows/test-coverage.yaml index 3c0da1c..21b8a93 100644 --- a/.github/workflows/test-coverage.yaml +++ b/.github/workflows/test-coverage.yaml @@ -1,4 +1,4 @@ -# Workflow derived from https://github.com/r-lib/actions/tree/master/examples +# Workflow derived from https://github.com/r-lib/actions/tree/v2/examples # Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help on: push: @@ -15,16 +15,36 @@ jobs: GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - - uses: r-lib/actions/setup-r@v1 + - uses: r-lib/actions/setup-r@v2 with: use-public-rspm: true - - uses: r-lib/actions/setup-r-dependencies@v1 + - uses: r-lib/actions/setup-r-dependencies@v2 with: - extra-packages: covr + extra-packages: any::covr + needs: coverage - name: Test coverage - run: covr::codecov() + run: | + covr::codecov( + quiet = FALSE, + clean = FALSE, + install_path = file.path(normalizePath(Sys.getenv("RUNNER_TEMP"), winslash = "/"), "package") + ) shell: Rscript {0} + + - name: Show testthat output + if: always() + run: | + ## -------------------------------------------------------------------- + find '${{ runner.temp }}/package' -name 'testthat.Rout*' -exec cat '{}' \; || true + shell: bash + + - name: Upload test results + if: failure() + uses: actions/upload-artifact@v4 + with: + name: coverage-test-failures + path: ${{ runner.temp }}/package diff --git a/.gitignore b/.gitignore index 5b6a065..234f028 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,4 @@ .Rhistory .RData .Ruserdata +docs diff --git a/DESCRIPTION b/DESCRIPTION index a7a25b3..cebb5ca 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,7 +1,7 @@ Package: openbangsamoro Type: Package Title: An Interface to the OpenBangsamoro Database -Version: 0.1.0 +Version: 0.0.0.9000 Authors@R: person(given = "Ernest", family = "Guevarra", email = "ernest@guevarra.io", @@ -22,6 +22,6 @@ Encoding: UTF-8 Language: en-GB LazyData: true Roxygen: list(markdown = TRUE) -RoxygenNote: 7.1.2 +RoxygenNote: 7.3.1 URL: https://panukatan.io/openbangsamoro/, https://github.com/panukatan/openbangsamoro BugReports: https://github.com/panukatan/openbangsamoro/issues diff --git a/R/bangsa_get.R b/R/bangsa_get.R index 61c311f..37a7697 100644 --- a/R/bangsa_get.R +++ b/R/bangsa_get.R @@ -44,7 +44,7 @@ bangsa_ls <- function(id = "1W8JV4hth_gs1V6efb92HMz0eU2LRYbOO") { # ################################################################################ -bangsa_ls_geodata <- function(recursive = FALSE) { +bangsa_ls_geodata <- function() { ## Get id id = bangsa_ls()$id[bangsa_ls()$name == "1-Geodata"] @@ -52,7 +52,7 @@ bangsa_ls_geodata <- function(recursive = FALSE) { googledrive::drive_deauth() ## Get id - x <- bangsa_ls(id = id, recursive = recursive) + x <- bangsa_ls(id = id) ## Return x x diff --git a/README.Rmd b/README.Rmd index 5ccb962..3b12a4b 100644 --- a/README.Rmd +++ b/README.Rmd @@ -18,32 +18,49 @@ knitr::opts_chunk$set( [![Project Status: WIP – Initial development is in progress, but there has not yet been a stable, usable release suitable for the public.](https://www.repostatus.org/badges/latest/wip.svg)](https://www.repostatus.org/#wip) [![Lifecycle: experimental](https://img.shields.io/badge/lifecycle-experimental-orange.svg)](https://www.tidyverse.org/lifecycle/#experimental) -![R-CMD-check](https://github.com/panukatan/openbangsamoro/workflows/R-CMD-check/badge.svg) +[![R-CMD-check](https://github.com/panukatan/openbangsamoro/actions/workflows/R-CMD-check.yaml/badge.svg)](https://github.com/panukatan/openbangsamoro/actions/workflows/R-CMD-check.yaml) [![test-coverage](https://github.com/panukatan/openbangsamoro/actions/workflows/test-coverage.yaml/badge.svg)](https://github.com/panukatan/openbangsamoro/actions/workflows/test-coverage.yaml) [![Codecov test coverage](https://codecov.io/gh/panukatan/openbangsamoro/branch/main/graph/badge.svg)](https://codecov.io/gh/panukatan/openbangsamoro?branch=main) [![CodeFactor](https://www.codefactor.io/repository/github/panukatan/openbangsamoro/badge)](https://www.codefactor.io/repository/github/panukatan/openbangsamoro) -The [**OpenBangsamoro** initiative](https://www.openbangsamoro.com) supports the use of open statistical, geospatial, and administrative data for transparent, accountable, and participatory decision-making as the Autonomous Region in Muslim Mindanao (ARMM) transforms into the Bangsamoro Autonomous Region in Muslim Mindanao. +From the [Open Bangsamoro website](https://www.openbangsamoro.com/) + +> The [**OpenBangsamoro** initiative](https://www.openbangsamoro.com) supports the use of open statistical, geospatial, and administrative data for transparent, accountable, and participatory decision-making as the Autonomous Region in Muslim Mindanao (ARMM) transforms into the Bangsamoro Autonomous Region in Muslim Mindanao. + +The `openbangsamoro` R package supports this effort by providing an application programming interface to the [Open Bangsamoro shared Google Drive](https://drive.google.com/drive/folders/1W8JV4hth_gs1V6efb92HMz0eU2LRYbOO). Consistent with the principles of Open Bangsamoro, the `openbangsamoro` R package is built and distributed open source on a platform that allows and encourages community contribution using a programming language that is also open and freely available to use. + +We believe that through this added layer of interface to the Open Bangsamoro datasets, a cadre of users and developers - including those from Bangsamoro itself - can support the process of mapmaking, placemaking, and decision-making that the Open Bangsamoro effort has initiated and continue to encourage. + +## What does `openbangsamoro` do? + +Please note that `openbangsamoro` is still highly experimental and is undergoing a lot of development. Hence, any functionalities described below and in the rest of the package documentation have a high likelihood of changing interface or approach as we aim for a stable working version. + +Currently, the package provides functions for retrieving Google Drive specific drive information for the Open Bangsamoro Google Drive and its sub-directories. ## Installation - -`openbangsamoro` package is not yet available on [CRAN](https://cran.r-projecdt.org). +## Usage + +## Citation -The development version of the `openbangsamoro` package can be installed from [GitHub](https://github.com/panukatan/openbangsamoro) with: +If you find the `openbangsamoro` package useful please cite using the suggested citation provided by a call to the `citation()` function as follows: -```{r install, echo = TRUE, eval = FALSE} -if(!require(remotes)) install.packages("remotes") -remotes::install_github("panukatan/openbangsamoro") +```{r citation} +citation("openbangsamoro") ``` -## Usage +## Community guidelines + +Feedback, bug reports and feature requests are welcome; file issues or seek support [here](https://github.com/panukatan/openbangsamoro/issues). If you would like to contribute to the package, please see our [contributing guidelines](https://panukatan.io/openbangsamoro/CONTRIBUTING.html). +This project is released with a [Contributor Code of Conduct](https://panukatan.io/openbangsamoro/CODE_OF_CONDUCT.html). By participating in this project you agree to abide by its terms. diff --git a/README.md b/README.md index c3affb0..52fd525 100644 --- a/README.md +++ b/README.md @@ -10,38 +10,94 @@ has not yet been a stable, usable release suitable for the public.](https://www.repostatus.org/badges/latest/wip.svg)](https://www.repostatus.org/#wip) [![Lifecycle: experimental](https://img.shields.io/badge/lifecycle-experimental-orange.svg)](https://www.tidyverse.org/lifecycle/#experimental) -![R-CMD-check](https://github.com/panukatan/openbangsamoro/workflows/R-CMD-check/badge.svg) +[![R-CMD-check](https://github.com/panukatan/openbangsamoro/actions/workflows/R-CMD-check.yaml/badge.svg)](https://github.com/panukatan/openbangsamoro/actions/workflows/R-CMD-check.yaml) [![test-coverage](https://github.com/panukatan/openbangsamoro/actions/workflows/test-coverage.yaml/badge.svg)](https://github.com/panukatan/openbangsamoro/actions/workflows/test-coverage.yaml) [![Codecov test coverage](https://codecov.io/gh/panukatan/openbangsamoro/branch/main/graph/badge.svg)](https://codecov.io/gh/panukatan/openbangsamoro?branch=main) [![CodeFactor](https://www.codefactor.io/repository/github/panukatan/openbangsamoro/badge)](https://www.codefactor.io/repository/github/panukatan/openbangsamoro) -The [**OpenBangsamoro** initiative](https://www.openbangsamoro.com) -supports the use of open statistical, geospatial, and administrative -data for transparent, accountable, and participatory decision-making as -the Autonomous Region in Muslim Mindanao (ARMM) transforms into the -Bangsamoro Autonomous Region in Muslim Mindanao. +From the [Open Bangsamoro website](https://www.openbangsamoro.com/) + +> The [**OpenBangsamoro** initiative](https://www.openbangsamoro.com) +> supports the use of open statistical, geospatial, and administrative +> data for transparent, accountable, and participatory decision-making +> as the Autonomous Region in Muslim Mindanao (ARMM) transforms into the +> Bangsamoro Autonomous Region in Muslim Mindanao. + +The `openbangsamoro` R package supports this effort by providing an +application programming interface to the [Open Bangsamoro shared Google +Drive](https://drive.google.com/drive/folders/1W8JV4hth_gs1V6efb92HMz0eU2LRYbOO). +Consistent with the principles of Open Bangsamoro, the `openbangsamoro` +R package is built and distributed open source on a platform that allows +and encourages community contribution using a programming language that +is also open and freely available to use. + +We believe that through this added layer of interface to the Open +Bangsamoro datasets, a cadre of users and developers - including those +from Bangsamoro itself - can support the process of mapmaking, +placemaking, and decision-making that the Open Bangsamoro effort has +initiated and continue to encourage. + +## What does `openbangsamoro` do? + +Please note that `openbangsamoro` is still highly experimental and is +undergoing a lot of development. Hence, any functionalities described +below and in the rest of the package documentation have a high +likelihood of changing interface or approach as we aim for a stable +working version. + +Currently, the package provides functions for retrieving Google Drive +specific drive information for the Open Bangsamoro Google Drive and its +sub-directories. ## Installation - -`openbangsamoro` package is not yet available on -[CRAN](https://cran.r-projecdt.org). +## Usage + +## Citation -The development version of the `openbangsamoro` package can be installed -from [GitHub](https://github.com/panukatan/openbangsamoro) with: +If you find the `openbangsamoro` package useful please cite using the +suggested citation provided by a call to the `citation()` function as +follows: ``` r -if(!require(remotes)) install.packages("remotes") -remotes::install_github("panukatan/openbangsamoro") +citation("openbangsamoro") +#> To cite openbangsamoro in publications use: +#> +#> Ernest Guevarra (2024). openbangsamoro: An Interface to the Open +#> Bangsamoro Database R package version 0.0.0.9000 URL +#> https://panukatan.io/openbangsamoro/ +#> +#> A BibTeX entry for LaTeX users is +#> +#> @Manual{, +#> title = {openbangsamoro: An Interface to the Open Bangsamoro Database}, +#> author = {{Ernest Guevarra}}, +#> year = {2024}, +#> note = {R package version 0.0.0.9000}, +#> url = {https://panukatan.io/openbangsamoro/}, +#> } ``` -## Usage +## Community guidelines + +Feedback, bug reports and feature requests are welcome; file issues or +seek support [here](https://github.com/panukatan/openbangsamoro/issues). +If you would like to contribute to the package, please see our +[contributing +guidelines](https://panukatan.io/openbangsamoro/CONTRIBUTING.html). + +This project is released with a [Contributor Code of +Conduct](https://panukatan.io/openbangsamoro/CODE_OF_CONDUCT.html). By +participating in this project you agree to abide by its terms. diff --git a/inst/CITATION b/inst/CITATION new file mode 100644 index 0000000..d952e5e --- /dev/null +++ b/inst/CITATION @@ -0,0 +1,16 @@ +citHeader("To cite openbangsamoro in publications use:") + +citEntry( + entry = "Manual", + title = "openbangsamoro: An Interface to the Open Bangsamoro Database", + author = person("Ernest Guevarra"), + year = "2024", + note = "R package version 0.0.0.9000", + url = "https://panukatan.io/openbangsamoro/", + textVersion = paste( + "Ernest Guevarra (2024).", + "openbangsamoro: An Interface to the Open Bangsamoro Database", + "R package version 0.0.0.9000", + "URL https://panukatan.io/openbangsamoro/" + ) +) diff --git a/man/bangsa_ls.Rd b/man/bangsa_ls.Rd index 1e7b35b..ede8400 100644 --- a/man/bangsa_ls.Rd +++ b/man/bangsa_ls.Rd @@ -9,7 +9,7 @@ \usage{ bangsa_ls(id = "1W8JV4hth_gs1V6efb92HMz0eU2LRYbOO") -bangsa_ls_geodata(id = bangsa_ls()$id[bangsa_ls()$name == "1-Geodata"]) +bangsa_ls_geodata() bangsa_ls_tabular(id = bangsa_ls()$id[bangsa_ls()$name == "2-Tabular Data"]) diff --git a/man/openbangsamoro.Rd b/man/openbangsamoro.Rd index 1f3fc27..68a7ff6 100644 --- a/man/openbangsamoro.Rd +++ b/man/openbangsamoro.Rd @@ -2,8 +2,8 @@ % Please edit documentation in R/openbangsamoro.R \docType{package} \name{openbangsamoro} -\alias{openbangsamoro} \alias{openbangsamoro-package} +\alias{openbangsamoro} \title{An Interface to the OpenBangsamoro Database} \description{ The OpenBangsamoro initiative supports the use of open statistical, diff --git a/pkgdown/_pkgdown.yml b/pkgdown/_pkgdown.yml index d6bfd15..288cab0 100644 --- a/pkgdown/_pkgdown.yml +++ b/pkgdown/_pkgdown.yml @@ -3,24 +3,36 @@ title: openbangsamoro url: https://panukatan.io/openbangsamoro/ template: - params: - bootswatch: sandstone - ganalytics: + bootstrap: 5 + bootswatch: cosmo + theme: haddock + ganalytics: ~ home: links: - text: Read about OpenBangsamoro href: https://www.openbangsamoro.com - - text: Learn about Panukatan href: https://panukatan.io +navbar: + bg: info + type: light + structure: + left: + - home + - intro + - reference + - articles + - news + components: ~ + reference: - title: Description - contents: - - openbangsamoro + contents: openbangsamoro - title: Get data contents: - starts_with("bangsa_ls") - starts_with("bangsa_get") +