diff --git a/DESCRIPTION b/DESCRIPTION
index 9a8238e..d0982a8 100644
--- a/DESCRIPTION
+++ b/DESCRIPTION
@@ -56,7 +56,10 @@
     knitr,
     purrrlyr,
     raster,
-    tidyverse
+    tidyverse,
+    sf,
+    geojsonsf,
+    viridisLite
 Collate: 
     'logging.R'
     'KorAPConnection.R'
diff --git a/R/KorAPQuery.R b/R/KorAPQuery.R
index 92a5348..db44f17 100644
--- a/R/KorAPQuery.R
+++ b/R/KorAPQuery.R
@@ -1147,10 +1147,14 @@
 #'   fetchAnnotations()
 #'
 #' # Access linguistic annotations for match i:
-#' pos_tags <- q@collectedMatches$pos         # Data frame with left/match/right columns for POS tags
-#' lemmas <- q@collectedMatches$lemma         # Data frame with left/match/right columns for lemmas
-#' morphology <- q@collectedMatches$morph     # Data frame with left/match/right columns for morphological tags
-#' atokens <- q@collectedMatches$atokens      # Data frame with left/match/right columns for annotation token text
+#' pos_tags <- q@collectedMatches$pos
+#' # Data frame with left/match/right columns for POS tags
+#' lemmas <- q@collectedMatches$lemma
+#' # Data frame with left/match/right columns for lemmas
+#' morphology <- q@collectedMatches$morph
+#' # Data frame with left/match/right columns for morphological tags
+#' atokens <- q@collectedMatches$atokens
+#' # Data frame with left/match/right columns for annotation token text
 #' raw_snippet <- q@collectedMatches$annotation_snippet[[i]] # Original XML snippet for match i
 #'
 #' # Access specific components:
@@ -1166,6 +1170,8 @@
 #'   fetchAnnotations(foundry = "marmot")
 #' q@collectedMatches$pos$left[1] # POS tags for the left context of the first match
 #' }
+#' @usage fetchAnnotations(kqo, foundry = "tt", overwrite = FALSE,
+#'   verbose = kqo@korapConnection@verbose)
 #' @export
 setMethod("fetchAnnotations", "KorAPQuery", function(kqo, foundry = "tt", overwrite = FALSE, verbose = kqo@korapConnection@verbose) {
   if (is.null(kqo@collectedMatches) || nrow(kqo@collectedMatches) == 0) {
diff --git a/demo/corpus_size_by_year.R b/demo/corpus_size_by_year.R
index 853b629..5010d08 100644
--- a/demo/corpus_size_by_year.R
+++ b/demo/corpus_size_by_year.R
@@ -4,7 +4,6 @@
 #
 library(RKorAPClient)
 library(ggplot2)
-library(scales)  # For comma_format()
 
 # Define years to analyze
 years <- 1990:2024
@@ -26,7 +25,7 @@
 g <- ggplot(corpus_data, aes(x = year, y = tokens)) +
   geom_col(fill = "steelblue", alpha = 0.7) +
   scale_x_continuous(breaks = seq(1990, 2024, 5)) +
-  scale_y_continuous(labels = scales::comma_format()) +
+  scale_y_continuous(labels = function(x) format(x, big.mark = ",", scientific = FALSE)) +
   labs(
     title = "Corpus Size by Year - Stern Magazine",
     subtitle = "Number of tokens in DeReKo",
diff --git a/demo/regional.R b/demo/regional.R
index cf31ab7..10b5f82 100755
--- a/demo/regional.R
+++ b/demo/regional.R
@@ -1,7 +1,7 @@
 #!/usr/bin/Rscript
 library(RKorAPClient)
 library(ggplot2)
-library(sf)
+## sf is used via sf::; don't attach package in demo to avoid undeclared library() calls
 # library(R.cache)
 
 devAskNewPage(ask = FALSE)
diff --git a/man/fetchAnnotations-KorAPQuery-method.Rd b/man/fetchAnnotations-KorAPQuery-method.Rd
index 36f28f0..ea00bcb 100644
--- a/man/fetchAnnotations-KorAPQuery-method.Rd
+++ b/man/fetchAnnotations-KorAPQuery-method.Rd
@@ -5,7 +5,8 @@
 \alias{fetchAnnotations}
 \title{Fetch annotations for all collected matches}
 \usage{
-\S4method{fetchAnnotations}{KorAPQuery}(kqo, foundry = "tt", overwrite = FALSE, verbose = kqo@korapConnection@verbose)
+\S4method{fetchAnnotations}{KorAPQuery}(kqo, foundry = "tt", overwrite = FALSE,
+  verbose = kqo@korapConnection@verbose)
 }
 \arguments{
 \item{kqo}{object obtained from \code{\link[=corpusQuery]{corpusQuery()}} with collected matches. Note: the original corpus query should have \code{metadataOnly = FALSE} for annotation parsing to work.}
@@ -61,16 +62,24 @@
   fetchAnnotations()
 
 # Access linguistic annotations for match i:
-pos_tags <- q@collectedMatches$pos         # Data frame with left/match/right columns for POS tags
-lemmas <- q@collectedMatches$lemma         # Data frame with left/match/right columns for lemmas
-morphology <- q@collectedMatches$morph     # Data frame with left/match/right columns for morphological tags
-atokens <- q@collectedMatches$atokens      # Data frame with left/match/right columns for annotation token text
-raw_snippet <- q@collectedMatches$annotation_snippet[[i]] # Original XML snippet for match i
+pos_tags <- q@collectedMatches$pos
+# Data frame with left/match/right columns for POS tags
+lemmas <- q@collectedMatches$lemma
+# Data frame with left/match/right columns for lemmas
+morphology <- q@collectedMatches$morph
+# Data frame with left/match/right columns for morphological tags
+atokens <- q@collectedMatches$atokens
+# Data frame with left/match/right columns for annotation token text
+raw_snippet <- q@collectedMatches$annotation_snippet[[i]]
+# Original XML snippet for match i
 
 # Access specific components:
-match_pos <- q@collectedMatches$pos$match[[i]]     # POS tags for the matched tokens in match i
-left_lemmas <- q@collectedMatches$lemma$left[[i]]  # Lemmas for the left context in match i
-right_tokens <- q@collectedMatches$atokens$right[[i]] # Token text for the right context in match i
+match_pos <- q@collectedMatches$pos$match[[i]]
+# POS tags for the matched tokens in match i
+left_lemmas <- q@collectedMatches$lemma$left[[i]]
+# Lemmas for the left context in match i
+right_tokens <- q@collectedMatches$atokens$right[[i]]
+# Token text for the right context in match i
 
 # Use a different foundry (e.g., MarMoT)
 q <- KorAPConnection() |>
