diff --git a/docs/annotations/index.md b/docs/annotations/index.md
index fc6d693..419c0b2 100644
--- a/docs/annotations/index.md
+++ b/docs/annotations/index.md
@@ -25,6 +25,10 @@ Cloud Annotations is available through [Maven Central](https://central.sonatype.
{{ dependency_listing("annotations", "core") }}
+In order to for Cloud to obtain the parameter names for arguments you'll need to add the parameter flag to your Java/Kotlin compilation step.
+
+{{ javac_parameters() }}
+
You then need to create an
{{ javadoc("https://javadoc.io/doc/org.incendo/cloud-annotations/latest/org/incendo/cloud/annotations/AnnotationParser.html", "AnnotationParser") }}
instance.
diff --git a/docs/core/index.md b/docs/core/index.md
index fea1787..ceaf186 100644
--- a/docs/core/index.md
+++ b/docs/core/index.md
@@ -750,3 +750,10 @@ contains an opinionated implementation of the help system for Minecraft.
You can find examples on GitHub for either
[Builders](https://github.com/Incendo/cloud-minecraft/blob/master/examples/example-bukkit/src/main/java/cloud/commandframework/examples/bukkit/builder/feature/HelpExample.java) or
[Annotations](https://github.com/Incendo/cloud-minecraft/blob/master/examples/example-bukkit/src/main/java/cloud/commandframework/examples/bukkit/annotations/feature/HelpExample.java).
+
+### Usage within projects
+
+Cloud will have differing versions between core and the other groups of modules, Cloud Minecraft for example will be updated seperately. If core has a bug fix or feature that is not yet available
+inside of the current Cloud Minecraft release you can define cloud-core as it's own dependency force it's use that way. You should also shade Cloud inside of your project, here's an example of doing so:
+
+{{ shade_dependency() }}
diff --git a/main.py b/main.py
index 613a5d2..0307fa5 100644
--- a/main.py
+++ b/main.py
@@ -31,6 +31,149 @@ def dependency_listing(name: str, version: str = None) -> str:
```
""".format(name=name, version=env.variables.version[version])
+ @env.macro
+ def shade_dependency() -> str:
+ return """
+=== "Maven"
+
+ ```xml
+
+
+
+ org.apache.maven.plugins
+ maven-shade-plugin
+ 3.6.0
+
+
+ package
+
+ shade
+
+
+
+
+ org.incendo.cloud
+ com.yourpackage.libs.cloud
+
+
+
+
+
+
+
+
+ ```
+
+=== "Gradle (Kotlin)"
+
+ ```kotlin
+ plugins {
+ id("com.gradleup.shadow") version "8.3.0"
+ }
+
+ tasks {
+ assemble {
+ dependsOn(shadowJar)
+ }
+
+ shadowJar {
+ relocate("org.incendo.cloud", "com.yourpackage.libs.cloud")
+ }
+ }
+ ```
+
+=== "Gradle (Groovy)"
+
+ ```groovy
+ plugins {
+ id 'com.gradleup.shadow' version '8.3.0'
+ }
+
+ tasks {
+ assemble {
+ dependsOn shadowJar
+ }
+
+ shadowJar {
+ relocate 'org.incendo.cloud', 'com.yourpackage.libs.cloud'
+ }
+ }
+ ```
+"""
+
+ @env.macro
+ def javac_parameters() -> str:
+ return """
+=== "Maven"
+
+ ```xml
+
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.8.1
+
+
+ -parameters
+
+
+
+
+
+
+ org.jetbrains.kotlin
+ kotlin-maven-plugin
+ 1.9.0
+
+
+ compile
+
+ compile
+
+
+
+ -java-parameters
+
+
+
+
+
+
+
+ ```
+
+=== "Gradle (Kotlin)"
+
+ ```kotlin
+ tasks.withType {
+ options.compilerArgs.add("-parameters")
+ }
+
+ // only needed if your project uses Kotlin
+ tasks.withType {
+ compilerOptions {
+ freeCompilerArgs.add("-java-parameters")
+ }
+ }
+ ```
+
+=== "Gradle (Groovy)"
+
+ ```groovy
+ tasks.withType(JavaCompile) {
+ options.compilerArgs << "-parameters"
+ }
+
+ // only needed if your project uses Kotlin
+ tasks.withType(KotlinCompile) {
+ kotlinOptions {
+ freeCompilerArgs << "-java-parameters"
+ }
+ }
+ ```
+"""
+
@env.macro
def javadoc(link: str, title: str = None) -> str:
if title is None: