diff --git a/.vscode/settings.json b/.vscode/settings.json
index 8c21898..4a34609 100644
--- a/.vscode/settings.json
+++ b/.vscode/settings.json
@@ -207,6 +207,7 @@
"schedulable",
"schedutil",
"scrollback",
+ "sdkman",
"setfacl",
"setfattr",
"slurm",
diff --git a/knowledge base/sdkman.md b/knowledge base/sdkman.md
new file mode 100644
index 0000000..ce468ce
--- /dev/null
+++ b/knowledge base/sdkman.md
@@ -0,0 +1,131 @@
+# SDKMAN
+
+1. [TL;DR](#tldr)
+1. [Further readings](#further-readings)
+ 1. [Sources](#sources)
+
+## TL;DR
+
+
+ Management
+
+Configuration file: `${HOME}/.sdkman/etc/config`
+
+```sh
+# Install.
+curl -s "https://get.sdkman.io" | bash
+export SDKMAN_DIR="/path/to/custom/location" && curl -s "https://get.sdkman.io" | bash
+curl -s "https://get.sdkman.io?rcupdate=false" | bash
+
+# Initialize.
+source "$HOME/.sdkman/bin/sdkman-init.sh"
+
+# Get help.
+sdk help
+sdk help 'install'
+
+# Show the current SDKMAN version.
+sdk version
+
+# Change configuration values.
+# Opens the editor defined by the 'EDITOR' variable.
+sdk config
+
+# Install a new version of SDKMAN! if available.
+sdk selfupdate
+sdk selfupdate force
+
+# Uninstall.
+# The initialization snippet must also be removed from the shells' RC dotfiles.
+tar zcvf "${HOME}/sdkman-backup_$(date +%F-%kh%M).tar.gz" -C "$HOME" '.sdkman' \
+&& rm -rf "${HOME}/.sdkman"
+```
+
+
+
+
+ Usage
+
+```sh
+# List available candidates.
+sdk list
+sdk list 'groovy'
+
+# Install versions.
+# When not given a version, 'latest' is implied.
+sdk install 'java'
+sdk install 'scala' '3.4.1'
+sdk install 'java 17-zulu' '/Library/Java/JavaVirtualMachines/zulu-17.jdk/Contents/Home'
+
+# Show the currently used versions.
+sdk current
+sdk current 'java'
+
+# Use specific versions in the current shell session.
+sdk use 'scala' '3.4.1'
+
+# Make versions the default.
+sdk default 'scala' '3.4.1'
+
+# Generate '.sdkmanrc' files.
+# Those files work like `asdf`'s '.tool-versions' files.
+sdk env init
+
+# Install missing versions.
+sdk env install
+
+# Switch to the configuration defined by the '.sdkmanrc' file in the current directory.
+sdk env
+
+# Reset the versions to the default ones.
+sdk env clear
+
+# Get the absolute path of versions.
+sdk home 'java' '21.0.2-tem'
+
+# Flush the local state.
+sdk flush
+
+# Toggle online/offline mode.
+sdk offline enable
+sdk offline disable
+
+# Refresh the available versions.
+sdk update
+
+# Upgrade versions.
+sdk upgrade
+sdk upgrade 'springboot'
+
+# Remove installed versions.
+sdk uninstall 'scala' '3.4.1'
+```
+
+
+
+
+
+## Further readings
+
+- [Website]
+
+### Sources
+
+- [Usage]
+
+
+
+
+
+
+
+[usage]: https://sdkman.io/usage
+[website]: https://sdkman.io/
+
+