diff --git a/docs/modules/configuration/nav.adoc b/docs/modules/configuration/nav.adoc
index 3c18a9d..03ac014 100644
--- a/docs/modules/configuration/nav.adoc
+++ b/docs/modules/configuration/nav.adoc
@@ -1,6 +1,7 @@
* xref:index.adoc[]
** xref:environment.adoc[]
** xref:project.adoc[]
+** xref:checksum.adoc[]
** xref:signing.adoc[]
** xref:release/index.adoc[]
*** xref:release/github.adoc[]
diff --git a/docs/modules/configuration/pages/checksum.adoc b/docs/modules/configuration/pages/checksum.adoc
new file mode 100644
index 0000000..feae816
--- /dev/null
+++ b/docs/modules/configuration/pages/checksum.adoc
@@ -0,0 +1,114 @@
+= Checksum
+
+JReleaser calculates checksums for all input files and artifacts. These checksums are grouped into a single file named
+`checksums.txt` which in turn may be signed and uploaded to a release.
+
+Use the following options to customize how checksums are handled:
+
+include::partial$legend.adoc[]
+
+[tabs]
+====
+YAML::
++
+[source,yaml]
+[subs="+macros"]
+----
+# icon:dot-circle[]
+checksum:
+ # The name of the grouping checksums file.
+ # Defaults to `checksums.txt`.
+ # icon:dot-circle[] icon:file-alt[]
+ name: '{{projectName}}-{{projectVersion}}_checksums.txt'
+
+ # Uploads individual checksum files.
+ # Defaults to `false`.
+ # icon:dot-circle[]
+ individual: true
+----
+TOML::
++
+[source,toml]
+[subs="+macros"]
+----
+# icon:dot-circle[]
+[checksum]
+ # The name of the grouping checksums file.
+ # Defaults to `checksums.txt`.
+ # icon:dot-circle[] icon:file-alt[]
+ name = "{{projectName}}-{{projectVersion}}_checksums.txt"
+
+ # Uploads individual checksum files.
+ # Defaults to `false`.
+ # icon:dot-circle[]
+ individual = true
+----
+JSON::
++
+[source,json]
+[subs="+macros"]
+----
+{
+ // icon:dot-circle[]
+ "checksum": {
+
+ // The name of the grouping checksums file.
+ // Defaults to `checksums.txt`.
+ // icon:dot-circle[] icon:file-alt[]
+ "name": "{{projectName}}-{{projectVersion}}_checksums.txt",
+
+ // Uploads individual checksum files.
+ // Defaults to `false`.
+ // icon:dot-circle[]
+ "individual": true
+ }
+}
+----
+Maven::
++
+[source,xml]
+[subs="+macros,verbatim"]
+----
+
+
+
+
+
+ {{projectName}}-{{projectVersion}}_checksums.txt
+
+
+ true
+
+
+----
+Gradle::
++
+[source,groovy]
+[subs="+macros"]
+----
+jreleaser {
+ // icon:dot-circle[]
+ checksum {
+ // The name of the grouping checksums file.
+ // Defaults to `checksums.txt`.
+ // icon:dot-circle[] icon:file-alt[]
+ name = '{{projectName}}-{{projectVersion}}_checksums.txt'
+
+ // Uploads individual checksum files.
+ // Defaults to `false`.
+ // icon:dot-circle[]
+ individual = true
+ }
+}
+----
+====
diff --git a/docs/modules/configuration/pages/index.adoc b/docs/modules/configuration/pages/index.adoc
index a1dfb16..6436124 100644
--- a/docs/modules/configuration/pages/index.adoc
+++ b/docs/modules/configuration/pages/index.adoc
@@ -3,6 +3,6 @@
This section describes elements that can be configured in `jrelease.yml` file. This file can be generated by running
`jreleaser init --format yml` or start from scratch.
-Other configuration formats besides YAML may be supported as well, such as TOML, JSON,
+Other configuration formats besides YAML are supported as well, such as TOML, JSON,
the xref:tools:jreleaser-maven.adoc[Maven] DSL, the xref:tools:jreleaser-gradle.adoc[Gradle] DSL.
diff --git a/docs/modules/continuous-integration/nav.adoc b/docs/modules/continuous-integration/nav.adoc
index d55ca42..644b2e9 100644
--- a/docs/modules/continuous-integration/nav.adoc
+++ b/docs/modules/continuous-integration/nav.adoc
@@ -1,11 +1,11 @@
* xref:index.adoc[]
-** xref:github-actions.adoc[]
-** xref:jenkins.adoc[]
-** xref:circle-ci.adoc[]
-** xref:codefresh.adoc[]
-** xref:gitlab-ci.adoc[]
-** xref:cirrus-ci.adoc[]
-** xref:drone.adoc[]
** xref:buildkite.adoc[]
-** xref:teamcity.adoc[]
+** xref:circle-ci.adoc[]
+** xref:cirrus-ci.adoc[]
+** xref:codefresh.adoc[]
** xref:codeship.adoc[]
+** xref:drone.adoc[]
+** xref:github-actions.adoc[]
+** xref:gitlab-ci.adoc[]
+** xref:jenkins.adoc[]
+** xref:teamcity.adoc[]
diff --git a/docs/modules/continuous-integration/pages/codeship.adoc b/docs/modules/continuous-integration/pages/codeship.adoc
index f2682bd..e68e7c6 100644
--- a/docs/modules/continuous-integration/pages/codeship.adoc
+++ b/docs/modules/continuous-integration/pages/codeship.adoc
@@ -7,13 +7,13 @@ xref:tools:jreleaser-maven.adoc[] or the xref:tools:jreleaser-gradle.adoc[] inst
Add the following to the Deploy tab as a "custom script"
-[source,shell]
+[source]
----
# Configure Java 11 if the previous steps used an older version of Java
jdk_switcher home openjdk11
jdk_switcher use openjdk11
-#Get the jreleaser downloader
+# Get the jreleaser downloader
curl -sL https://git.io/get-jreleaser > get_jreleaser.java
# Download JReleaser with version =
diff --git a/docs/modules/continuous-integration/pages/index.adoc b/docs/modules/continuous-integration/pages/index.adoc
index 42b9bd9..dcda0ec 100644
--- a/docs/modules/continuous-integration/pages/index.adoc
+++ b/docs/modules/continuous-integration/pages/index.adoc
@@ -3,13 +3,13 @@
JReleaser can be run as part of a CI pipeline. The following options are currently available, with more to come
in the future:
-* xref:github-actions.adoc[]
-* xref:jenkins.adoc[]
-* xref:circle-ci.adoc[]
-* xref:codefresh.adoc[]
-* xref:gitlab-ci.adoc[]
-* xref:cirrus-ci.adoc[]
-* xref:drone.adoc[]
* xref:buildkite.adoc[]
-* xref:teamcity.adoc[]
-* xref:codeship.adoc[]
\ No newline at end of file
+* xref:circle-ci.adoc[]
+* xref:cirrus-ci.adoc[]
+* xref:codefresh.adoc[]
+* xref:codeship.adoc[]
+* xref:drone.adoc[]
+* xref:github-actions.adoc[]
+* xref:gitlab-ci.adoc[]
+* xref:jenkins.adoc[]
+* xref:teamcity.adoc[]
\ No newline at end of file