Configure Checkstyle equivalent for markdown #90

Closed
opened 2026-04-11 15:17:18 +02:00 by lars.winzer · 6 comments
lars.winzer commented 2026-04-11 15:17:18 +02:00 (Migrated from git.scicore.unibas.ch)

Task

Summary

To ensure that Markdown files are easy to read and modify, there should be general guidelines, similar to the existing guidelines provided by Checkstyle for Java code.

Context

Gradle task and GitLab CI

Current Progress

  • Research for tool able to enforce linting rules for markdown
  • Include <insert plugin name> in build.gradle
  • Configure <insert tool name>

Notes

None.

Checklist

  • I outlined checkpoints describing phases of my work related to this task
  • I added relevant labels
  • I linked to other issues or branches that must be completed first
## Task <!--The reccommended type is: Task--> ### Summary To ensure that Markdown files are easy to read and modify, there should be general guidelines, similar to the existing guidelines provided by Checkstyle for Java code. ### Context Gradle task and GitLab CI ### Current Progress - [ ] Research for tool able to enforce linting rules for markdown - [ ] Include \<insert plugin name\> in `build.gradle` - [ ] Configure \<insert tool name\> ### Notes None. ### Checklist - [ ] I outlined checkpoints describing phases of my work related to this task - [ ] I added relevant labels - [ ] I linked to other issues or branches that must be completed first
lars.winzer commented 2026-04-11 15:17:19 +02:00 (Migrated from git.scicore.unibas.ch)

changed start date to April 06, 2026

changed start date to April 06, 2026
lars.winzer commented 2026-04-11 15:17:19 +02:00 (Migrated from git.scicore.unibas.ch)

assigned to @lars.winzer

assigned to @lars.winzer
lars.winzer commented 2026-04-11 15:24:56 +02:00 (Migrated from git.scicore.unibas.ch)

changed start date to April 13, 2026

changed start date to April 13, 2026
lars.winzer commented 2026-04-14 18:51:27 +02:00 (Migrated from git.scicore.unibas.ch)

As a linter, multiple (non-Gradle plugins) could be used:

  1. markdownlint - Linter based on the Ruby language, it has a lot of built-in rules appropriate for our application, custom rules can be added too.
  2. PyMarkdownLnt - Linter based on Python, featuring the same, if not more, built-in rules. Documentation on adding additional rules, however, is more scarce than compared to markdownlint.

I sympathize with the Python-based variant as it's more lightweight, requiring virtually no installation compared to markdownlint. Nevertheless, both installations could be cached to speed up job time.

As a formatter (VSCode plugin), vscode-remark could be used. It features both linting and formatting capabilities.

As a linter, multiple (non-Gradle plugins) could be used: 1. [markdownlint](https://github.com/markdownlint/markdownlint) - Linter based on the Ruby language, it has a lot of [built-in rules](https://github.com/markdownlint/markdownlint/blob/main/docs/RULES.md) appropriate for our application, [custom rules](https://github.com/markdownlint/markdownlint/blob/main/docs/creating_rules.md) can be added too. 2. [PyMarkdownLnt](https://pymarkdown.readthedocs.io/en/latest/) - Linter based on Python, featuring the same, if not more, [built-in rules](https://pymarkdown.readthedocs.io/en/latest/rules/). Documentation on adding additional rules, however, is more scarce than compared to markdownlint. I sympathize with the Python-based variant as it's more lightweight, requiring virtually no installation compared to markdownlint. Nevertheless, both installations could be cached to speed up job time. As a formatter (VSCode plugin), [vscode-remark](https://github.com/remarkjs/vscode-remark) could be used. It features both linting and formatting capabilities.
lars.winzer commented 2026-04-27 01:11:21 +02:00 (Migrated from git.scicore.unibas.ch)

Task will be moved to Milestone 6

Task will be moved to Milestone 6
lars.winzer commented 2026-05-12 13:10:32 +02:00 (Migrated from git.scicore.unibas.ch)

This issue will be closed, as it would introduce to much overhead to the CI pipeline given its relatively small impact.

This issue will be closed, as it would introduce to much overhead to the CI pipeline given its relatively small impact.
lars.winzer (Migrated from git.scicore.unibas.ch) closed this issue 2026-05-12 13:10:32 +02:00
This repo is archived. You cannot comment on issues.
1 Participants
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: University-of-Basel-Studentprojects/Programmierprojekt#90