diff --git a/assets/images/Makefile b/assets/images/Makefile
index 4f35aa4135d6a341a0864a9d099edd4cde5d18d6..1126fe4677ab07a159bf800a208a89aa1f7ea5a2 100644
--- a/assets/images/Makefile
+++ b/assets/images/Makefile
@@ -1,158 +1,161 @@
+RESOLUTION = $(shell pwd)/generate_resolution.sh
+THUMB = $(shell pwd)/generate_thumb.sh
+all: quassel_light@220.png quassel_light@266.png quassel_light@335.png quassel_light@352.png quassel_light@532.png quassel_light@thumb.jpg quassel_dark@220.png quassel_dark@266.png quassel_dark@335.png quassel_dark@352.png quassel_dark@532.png quassel_dark@thumb.jpg solarized_light@220.png solarized_light@266.png solarized_light@335.png solarized_light@352.png solarized_light@532.png solarized_light@thumb.jpg solarized_dark@220.png solarized_dark@266.png solarized_dark@335.png solarized_dark@352.png solarized_dark@532.png solarized_dark@thumb.jpg gruvbox_light@220.png gruvbox_light@266.png gruvbox_light@335.png gruvbox_light@352.png gruvbox_light@532.png gruvbox_light@thumb.jpg gruvbox_dark@220.png gruvbox_dark@266.png gruvbox_dark@335.png gruvbox_dark@352.png gruvbox_dark@532.png gruvbox_dark@thumb.jpg amoled@220.png amoled@266.png amoled@335.png amoled@352.png amoled@532.png amoled@thumb.jpg phone@220.png phone@300.png phone@400.png phone@520.png phone@640.png phone@800.png phone@1000.png phone@1220.png phone@thumb.png tablet@545.png tablet@640.png tablet@720.png tablet@800.png tablet@880.png tablet@960.png tablet@1090.png tablet@1635.png tablet@2180.png tablet@thumb.png notifications@363.png notifications@474.png notifications@590.png notifications@thumb.jpg desktop@363.png desktop@474.png desktop@590.png desktop@726.png desktop@948.png desktop@1180.png desktop@thumb.jpg themes@363.png themes@474.png themes@590.png themes@726.png themes@948.png themes@1180.png themes@thumb.jpg
 quassel_light@220.png: quassel_light.png
-	./generate_resolution quassel_light 220 85
+	$(RESOLUTION) quassel_light 220 85
 quassel_light@266.png: quassel_light.png
-	./generate_resolution quassel_light 266 85
+	$(RESOLUTION) quassel_light 266 85
 quassel_light@335.png: quassel_light.png
-	./generate_resolution quassel_light 335 85
+	$(RESOLUTION) quassel_light 335 85
 quassel_light@352.png: quassel_light.png
-	./generate_resolution quassel_light 352 85
+	$(RESOLUTION) quassel_light 352 85
 quassel_light@532.png: quassel_light.png
-	./generate_resolution quassel_light 532 85
+	$(RESOLUTION) quassel_light 532 85
 quassel_light@thumb.jpg: quassel_light.png
-	./generate_thumb quassel_light 16x 50 jpg
+	$(THUMB) quassel_light 16x 50 jpg
 quassel_dark@220.png: quassel_dark.png
-	./generate_resolution quassel_dark 220 85
+	$(RESOLUTION) quassel_dark 220 85
 quassel_dark@266.png: quassel_dark.png
-	./generate_resolution quassel_dark 266 85
+	$(RESOLUTION) quassel_dark 266 85
 quassel_dark@335.png: quassel_dark.png
-	./generate_resolution quassel_dark 335 85
+	$(RESOLUTION) quassel_dark 335 85
 quassel_dark@352.png: quassel_dark.png
-	./generate_resolution quassel_dark 352 85
+	$(RESOLUTION) quassel_dark 352 85
 quassel_dark@532.png: quassel_dark.png
-	./generate_resolution quassel_dark 532 85
+	$(RESOLUTION) quassel_dark 532 85
 quassel_dark@thumb.jpg: quassel_dark.png
-	./generate_thumb quassel_dark 16x 50 jpg
+	$(THUMB) quassel_dark 16x 50 jpg
 solarized_light@220.png: solarized_light.png
-	./generate_resolution solarized_light 220 85
+	$(RESOLUTION) solarized_light 220 85
 solarized_light@266.png: solarized_light.png
-	./generate_resolution solarized_light 266 85
+	$(RESOLUTION) solarized_light 266 85
 solarized_light@335.png: solarized_light.png
-	./generate_resolution solarized_light 335 85
+	$(RESOLUTION) solarized_light 335 85
 solarized_light@352.png: solarized_light.png
-	./generate_resolution solarized_light 352 85
+	$(RESOLUTION) solarized_light 352 85
 solarized_light@532.png: solarized_light.png
-	./generate_resolution solarized_light 532 85
+	$(RESOLUTION) solarized_light 532 85
 solarized_light@thumb.jpg: solarized_light.png
-	./generate_thumb solarized_light 16x 50 jpg
+	$(THUMB) solarized_light 16x 50 jpg
 solarized_dark@220.png: solarized_dark.png
-	./generate_resolution solarized_dark 220 85
+	$(RESOLUTION) solarized_dark 220 85
 solarized_dark@266.png: solarized_dark.png
-	./generate_resolution solarized_dark 266 85
+	$(RESOLUTION) solarized_dark 266 85
 solarized_dark@335.png: solarized_dark.png
-	./generate_resolution solarized_dark 335 85
+	$(RESOLUTION) solarized_dark 335 85
 solarized_dark@352.png: solarized_dark.png
-	./generate_resolution solarized_dark 352 85
+	$(RESOLUTION) solarized_dark 352 85
 solarized_dark@532.png: solarized_dark.png
-	./generate_resolution solarized_dark 532 85
+	$(RESOLUTION) solarized_dark 532 85
 solarized_dark@thumb.jpg: solarized_dark.png
-	./generate_thumb solarized_dark 16x 50 jpg
+	$(THUMB) solarized_dark 16x 50 jpg
 gruvbox_light@220.png: gruvbox_light.png
-	./generate_resolution gruvbox_light 220 85
+	$(RESOLUTION) gruvbox_light 220 85
 gruvbox_light@266.png: gruvbox_light.png
-	./generate_resolution gruvbox_light 266 85
+	$(RESOLUTION) gruvbox_light 266 85
 gruvbox_light@335.png: gruvbox_light.png
-	./generate_resolution gruvbox_light 335 85
+	$(RESOLUTION) gruvbox_light 335 85
 gruvbox_light@352.png: gruvbox_light.png
-	./generate_resolution gruvbox_light 352 85
+	$(RESOLUTION) gruvbox_light 352 85
 gruvbox_light@532.png: gruvbox_light.png
-	./generate_resolution gruvbox_light 532 85
+	$(RESOLUTION) gruvbox_light 532 85
 gruvbox_light@thumb.jpg: gruvbox_light.png
-	./generate_thumb gruvbox_light 16x 50 jpg
+	$(THUMB) gruvbox_light 16x 50 jpg
 gruvbox_dark@220.png: gruvbox_dark.png
-	./generate_resolution gruvbox_dark 220 85
+	$(RESOLUTION) gruvbox_dark 220 85
 gruvbox_dark@266.png: gruvbox_dark.png
-	./generate_resolution gruvbox_dark 266 85
+	$(RESOLUTION) gruvbox_dark 266 85
 gruvbox_dark@335.png: gruvbox_dark.png
-	./generate_resolution gruvbox_dark 335 85
+	$(RESOLUTION) gruvbox_dark 335 85
 gruvbox_dark@352.png: gruvbox_dark.png
-	./generate_resolution gruvbox_dark 352 85
+	$(RESOLUTION) gruvbox_dark 352 85
 gruvbox_dark@532.png: gruvbox_dark.png
-	./generate_resolution gruvbox_dark 532 85
+	$(RESOLUTION) gruvbox_dark 532 85
 gruvbox_dark@thumb.jpg: gruvbox_dark.png
-	./generate_thumb gruvbox_dark 16x 50 jpg
+	$(THUMB) gruvbox_dark 16x 50 jpg
 amoled@220.png: amoled.png
-	./generate_resolution amoled 220 85
+	$(RESOLUTION) amoled 220 85
 amoled@266.png: amoled.png
-	./generate_resolution amoled 266 85
+	$(RESOLUTION) amoled 266 85
 amoled@335.png: amoled.png
-	./generate_resolution amoled 335 85
+	$(RESOLUTION) amoled 335 85
 amoled@352.png: amoled.png
-	./generate_resolution amoled 352 85
+	$(RESOLUTION) amoled 352 85
 amoled@532.png: amoled.png
-	./generate_resolution amoled 532 85
+	$(RESOLUTION) amoled 532 85
 amoled@thumb.jpg: amoled.png
-	./generate_thumb amoled 16x 50 jpg
+	$(THUMB) amoled 16x 50 jpg
 phone@220.png: phone.png
-	./generate_resolution phone 220 85
+	$(RESOLUTION) phone 220 85
 phone@300.png: phone.png
-	./generate_resolution phone 300 85
+	$(RESOLUTION) phone 300 85
 phone@400.png: phone.png
-	./generate_resolution phone 400 85
+	$(RESOLUTION) phone 400 85
 phone@520.png: phone.png
-	./generate_resolution phone 520 85
+	$(RESOLUTION) phone 520 85
 phone@640.png: phone.png
-	./generate_resolution phone 640 85
+	$(RESOLUTION) phone 640 85
 phone@800.png: phone.png
-	./generate_resolution phone 800 85
+	$(RESOLUTION) phone 800 85
 phone@1000.png: phone.png
-	./generate_resolution phone 1000 85
+	$(RESOLUTION) phone 1000 85
 phone@1220.png: phone.png
-	./generate_resolution phone 1220 85
+	$(RESOLUTION) phone 1220 85
 phone@thumb.png: phone.png
-	./generate_thumb phone 16x 70 png
+	$(THUMB) phone 16x 70 png
 tablet@545.png: tablet.png
-	./generate_resolution tablet 545 85
+	$(RESOLUTION) tablet 545 85
 tablet@640.png: tablet.png
-	./generate_resolution tablet 640 85
+	$(RESOLUTION) tablet 640 85
 tablet@720.png: tablet.png
-	./generate_resolution tablet 720 85
+	$(RESOLUTION) tablet 720 85
 tablet@800.png: tablet.png
-	./generate_resolution tablet 800 85
+	$(RESOLUTION) tablet 800 85
 tablet@880.png: tablet.png
-	./generate_resolution tablet 880 85
+	$(RESOLUTION) tablet 880 85
 tablet@960.png: tablet.png
-	./generate_resolution tablet 960 85
+	$(RESOLUTION) tablet 960 85
 tablet@1090.png: tablet.png
-	./generate_resolution tablet 1090 85
+	$(RESOLUTION) tablet 1090 85
 tablet@1635.png: tablet.png
-	./generate_resolution tablet 1635 85
+	$(RESOLUTION) tablet 1635 85
 tablet@2180.png: tablet.png
-	./generate_resolution tablet 2180 85
+	$(RESOLUTION) tablet 2180 85
 tablet@thumb.png: tablet.png
-	./generate_thumb tablet 16x16 70 none
+	$(THUMB) tablet 16x16 70 none
 notifications@363.png: notifications.png
-	./generate_resolution notifications 363 85
+	$(RESOLUTION) notifications 363 85
 notifications@474.png: notifications.png
-	./generate_resolution notifications 474 85
+	$(RESOLUTION) notifications 474 85
 notifications@590.png: notifications.png
-	./generate_resolution notifications 590 85
+	$(RESOLUTION) notifications 590 85
 notifications@thumb.jpg: notifications.png
-	./generate_thumb notifications 16x 50 jpg
+	$(THUMB) notifications 16x 50 jpg
 desktop@363.png: desktop.png
-	./generate_resolution desktop 363 85
+	$(RESOLUTION) desktop 363 85
 desktop@474.png: desktop.png
-	./generate_resolution desktop 474 85
+	$(RESOLUTION) desktop 474 85
 desktop@590.png: desktop.png
-	./generate_resolution desktop 590 85
+	$(RESOLUTION) desktop 590 85
 desktop@726.png: desktop.png
-	./generate_resolution desktop 726 85
+	$(RESOLUTION) desktop 726 85
 desktop@948.png: desktop.png
-	./generate_resolution desktop 948 85
+	$(RESOLUTION) desktop 948 85
 desktop@1180.png: desktop.png
-	./generate_resolution desktop 1180 85
+	$(RESOLUTION) desktop 1180 85
 desktop@thumb.jpg: desktop.png
-	./generate_thumb desktop 16x 50 jpg
+	$(THUMB) desktop 16x 50 jpg
 themes@363.png: themes.png
-	./generate_resolution themes 363 85
+	$(RESOLUTION) themes 363 85
 themes@474.png: themes.png
-	./generate_resolution themes 474 85
+	$(RESOLUTION) themes 474 85
 themes@590.png: themes.png
-	./generate_resolution themes 590 85
+	$(RESOLUTION) themes 590 85
 themes@726.png: themes.png
-	./generate_resolution themes 726 85
+	$(RESOLUTION) themes 726 85
 themes@948.png: themes.png
-	./generate_resolution themes 948 85
+	$(RESOLUTION) themes 948 85
 themes@1180.png: themes.png
-	./generate_resolution themes 1180 85
+	$(RESOLUTION) themes 1180 85
 themes@thumb.jpg: themes.png
-	./generate_thumb themes 16x 50 jpg
+	$(THUMB) themes 16x 50 jpg
diff --git a/assets/images/amoled@220.png b/assets/images/amoled@220.png
new file mode 100644
index 0000000000000000000000000000000000000000..a3e1a4c3aedaec6dcaca577b3ea6b9d31051ec2a
Binary files /dev/null and b/assets/images/amoled@220.png differ
diff --git a/assets/images/amoled@266.png b/assets/images/amoled@266.png
new file mode 100644
index 0000000000000000000000000000000000000000..41966ef74b6a38a37bc3cbc2c0ceccb378cb2170
Binary files /dev/null and b/assets/images/amoled@266.png differ
diff --git a/assets/images/amoled@335.png b/assets/images/amoled@335.png
new file mode 100644
index 0000000000000000000000000000000000000000..ef1e6218513b12b29183ba0d83ee2a5f8ccc0594
Binary files /dev/null and b/assets/images/amoled@335.png differ
diff --git a/assets/images/amoled@352.png b/assets/images/amoled@352.png
new file mode 100644
index 0000000000000000000000000000000000000000..0551e82329b63d8b53b345e544fdabde6b7b4e13
Binary files /dev/null and b/assets/images/amoled@352.png differ
diff --git a/assets/images/amoled@532.png b/assets/images/amoled@532.png
new file mode 100644
index 0000000000000000000000000000000000000000..c33b70382f48ea59602096099dd0abebe2c2fb10
Binary files /dev/null and b/assets/images/amoled@532.png differ
diff --git a/assets/images/amoled@thumb.jpg b/assets/images/amoled@thumb.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..d0862bf59bce2f8d75b263e50ce2f2e14bfd8d37
Binary files /dev/null and b/assets/images/amoled@thumb.jpg differ
diff --git a/assets/images/desktop@1180.png b/assets/images/desktop@1180.png
new file mode 100644
index 0000000000000000000000000000000000000000..524fabbcfac61ca5c5bd4f91ad16ad2c3b64f668
Binary files /dev/null and b/assets/images/desktop@1180.png differ
diff --git a/assets/images/desktop@363.png b/assets/images/desktop@363.png
new file mode 100644
index 0000000000000000000000000000000000000000..e8f9d8178f0708e4341d4656cca1f1b2fdd8889e
Binary files /dev/null and b/assets/images/desktop@363.png differ
diff --git a/assets/images/desktop@474.png b/assets/images/desktop@474.png
new file mode 100644
index 0000000000000000000000000000000000000000..2f7af8e577e56a0bf8bc6d4125bd53749997a357
Binary files /dev/null and b/assets/images/desktop@474.png differ
diff --git a/assets/images/desktop@590.png b/assets/images/desktop@590.png
new file mode 100644
index 0000000000000000000000000000000000000000..591c9a6447c520f72332a26b8845ffe0164fefd7
Binary files /dev/null and b/assets/images/desktop@590.png differ
diff --git a/assets/images/desktop@726.png b/assets/images/desktop@726.png
new file mode 100644
index 0000000000000000000000000000000000000000..dcd3c74e07335e07aafe76ea243760d0bd6e7c34
Binary files /dev/null and b/assets/images/desktop@726.png differ
diff --git a/assets/images/desktop@948.png b/assets/images/desktop@948.png
new file mode 100644
index 0000000000000000000000000000000000000000..6f21b91320509f452f0249d1be56e0688b22dfd1
Binary files /dev/null and b/assets/images/desktop@948.png differ
diff --git a/assets/images/desktop@thumb.jpg b/assets/images/desktop@thumb.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..31c7efef8bbec187f1e9b854040b9d60bb44d596
Binary files /dev/null and b/assets/images/desktop@thumb.jpg differ
diff --git a/assets/images/generate_image.sh b/assets/images/generate_image.sh
index 42f0cc84d485edd718b1697d91287e346eb81ed9..c735e817314805c58e6aeb2fb9473f86bd810de3 100755
--- a/assets/images/generate_image.sh
+++ b/assets/images/generate_image.sh
@@ -2,16 +2,14 @@
 
 cd $(dirname $(realpath -s ${0}))
 
-function generate_image() {
-  image=${1}
-  resolutions=${2}
-  default_resolution=${3}
-  quality=${4}
-  thumb_quality=${5}
-  thumb_format=${6}
+image=${1}
+resolutions=${2}
+default_resolution=${3}
+quality=${4}
+thumb_quality=${5}
+thumb_format=${6}
 
-  for resolution in ${resolutions}; do
-    ./generate_resolution ${image} ${resolution} ${quality}
-  done
-  ./generate_thumb ${image} ${default_resolution} ${thumb_quality} ${thumb_format}
-}
\ No newline at end of file
+for resolution in ${resolutions}; do
+  ./generate_resolution ${image} ${resolution} ${quality}
+done
+./generate_thumb ${image} ${default_resolution} ${thumb_quality} ${thumb_format}
\ No newline at end of file
diff --git a/assets/images/generate_makefile.sh b/assets/images/generate_makefile.sh
index 11482ea6862bc932542046fd562e4b97d15f2d4a..0a66f9cdeb4df5be1e5007647737c81252759759 100755
--- a/assets/images/generate_makefile.sh
+++ b/assets/images/generate_makefile.sh
@@ -5,6 +5,8 @@ THUMB_QUALITY_JPG=50
 
 cd $(dirname $(realpath -s ${0}))
 
+RULES=()
+
 function generate_rule() {
   image=${1}
   resolutions=${2}
@@ -14,22 +16,26 @@ function generate_rule() {
   thumb_format=${6}
 
   for resolution in ${resolutions}; do
-    echo "${image}@${resolution}.png: ${image}.png"
-    echo "	./generate_resolution ${image} ${resolution} ${quality}"
+    RULES+=("${image}@${resolution}.png")
+    echo "${image}@${resolution}.png: ${image}.png" >> Makefile.wip
+    echo "	\$(RESOLUTION) ${image} ${resolution} ${quality}" >> Makefile.wip
   done
 
   case ${thumb_format} in
   "png")
-    echo "${image}@thumb.png: ${image}.png"
-    echo "	./generate_thumb ${image} ${default_resolution} ${thumb_quality} png"
+    RULES+=("${image}@thumb.png")
+    echo "${image}@thumb.png: ${image}.png" >> Makefile.wip
+    echo "	\$(THUMB) ${image} ${default_resolution} ${thumb_quality} png" >> Makefile.wip
     ;;
   "jpg")
-    echo "${image}@thumb.jpg: ${image}.png"
-    echo "	./generate_thumb ${image} ${default_resolution} ${thumb_quality} jpg"
+    RULES+=("${image}@thumb.jpg")
+    echo "${image}@thumb.jpg: ${image}.png" >> Makefile.wip
+    echo "	\$(THUMB) ${image} ${default_resolution} ${thumb_quality} jpg" >> Makefile.wip
     ;;
   "none")
-    echo "${image}@thumb.png: ${image}.png"
-    echo "	./generate_thumb ${image} ${default_resolution} ${thumb_quality} none"
+    RULES+=("${image}@thumb.png")
+    echo "${image}@thumb.png: ${image}.png" >> Makefile.wip
+    echo "	\$(THUMB) ${image} ${default_resolution} ${thumb_quality} none" >> Makefile.wip
     ;;
   *)
     echo "Unknown format: $thumb_format"
@@ -38,14 +44,29 @@ function generate_rule() {
   esac
 }
 
-echo -n > Makefile
+function finalize() {
+  echo -n "all:" >> Makefile
+  for rule in "${RULES[@]}"; do
+    echo -n " $rule" >> Makefile
+  done
+  echo >> Makefile
+  cat Makefile.wip >> Makefile
+  rm Makefile.wip
+}
+
+cat <<EOF > Makefile
+RESOLUTION = \$(shell pwd)/generate_resolution.sh
+THUMB = \$(shell pwd)/generate_thumb.sh
+EOF
 # Generate Images
 themes="quassel_light quassel_dark solarized_light solarized_dark gruvbox_light gruvbox_dark amoled"
 for image in ${themes}; do
-  generate_rule ${image} "220 266 335 352 532" 16x ${QUALITY} ${THUMB_QUALITY_JPG} jpg >> Makefile
+  generate_rule ${image} "220 266 335 352 532" 16x ${QUALITY} ${THUMB_QUALITY_JPG} jpg
 done
-generate_rule phone "220 300 400 520 640 800 1000 1220" 16x ${QUALITY} ${THUMB_QUALITY_PNG} png >> Makefile
-generate_rule tablet "545 640 720 800 880 960 1090 1635 2180" 16x16 ${QUALITY} ${THUMB_QUALITY_PNG} none >> Makefile
-generate_rule notifications "363 474 590" 16x ${QUALITY} ${THUMB_QUALITY_JPG} jpg >> Makefile
-generate_rule desktop "363 474 590 726 948 1180" 16x ${QUALITY} ${THUMB_QUALITY_JPG} jpg >> Makefile
-generate_rule themes "363 474 590 726 948 1180" 16x ${QUALITY} ${THUMB_QUALITY_JPG} jpg >> Makefile
\ No newline at end of file
+generate_rule phone "220 300 400 520 640 800 1000 1220" 16x ${QUALITY} ${THUMB_QUALITY_PNG} png
+generate_rule tablet "545 640 720 800 880 960 1090 1635 2180" 16x16 ${QUALITY} ${THUMB_QUALITY_PNG} none
+generate_rule notifications "363 474 590" 16x ${QUALITY} ${THUMB_QUALITY_JPG} jpg
+generate_rule desktop "363 474 590 726 948 1180" 16x ${QUALITY} ${THUMB_QUALITY_JPG} jpg
+generate_rule themes "363 474 590 726 948 1180" 16x ${QUALITY} ${THUMB_QUALITY_JPG} jpg
+
+finalize
\ No newline at end of file
diff --git a/assets/images/generate_resolution.sh b/assets/images/generate_resolution.sh
index 2a8665325d481be1e27051d2770f275b802f54a6..3e7465674b61021abc2de88a1bd4ccc4b9187e23 100755
--- a/assets/images/generate_resolution.sh
+++ b/assets/images/generate_resolution.sh
@@ -2,12 +2,10 @@
 
 cd $(dirname $(realpath -s ${0}))
 
-function generate_resolution() {
-  image=${1}
-  resolution=${2}
-  quality=${3}
+image=${1}
+resolution=${2}
+quality=${3}
 
-  convert ${image}.png -filter Lanczos -distort Resize ${resolution}x ${image}@${resolution}.png
-  pngquant --quality ${quality} ${image}@${resolution}.png
-  mv ${image}@${resolution}-fs8.png ${image}@${resolution}.png
-}
\ No newline at end of file
+convert ${image}.png -filter Lanczos -distort Resize ${resolution}x ${image}@${resolution}.png
+pngquant --quality ${quality} ${image}@${resolution}.png
+mv ${image}@${resolution}-fs8.png ${image}@${resolution}.png
\ No newline at end of file
diff --git a/assets/images/generate_thumb.sh b/assets/images/generate_thumb.sh
index 19a6991e3f8c1757fdacc4dc1f4329e886541928..e1e237f838aaa364535ab535001b0dcf1ddb27d9 100755
--- a/assets/images/generate_thumb.sh
+++ b/assets/images/generate_thumb.sh
@@ -2,29 +2,6 @@
 
 cd $(dirname $(realpath -s ${0}))
 
-function generate_thumb() {
-  image=${1}
-  default_resolution=${2}
-  quality=${3}
-  format=${4}
-
-  case ${format} in
-  "png")
-    generate_thumb_png ${image} ${default_resolution} ${quality}
-    ;;
-  "jpg")
-    generate_thumb_jpg ${image} ${default_resolution} ${quality}
-    ;;
-  "none")
-    generate_thumb_none ${image} ${default_resolution} ${quality}
-    ;;
-  *)
-    echo "Unknown format: $format"
-    exit 1
-    ;;
-  esac
-}
-
 function generate_thumb_jpg() {
   image=${1}
   default_resolution=${2}
@@ -52,4 +29,25 @@ function generate_thumb_none() {
   quality=${3}
 
   convert -size ${default_resolution} xc:none ${image}@thumb.png
-}
\ No newline at end of file
+}
+
+image=${1}
+default_resolution=${2}
+quality=${3}
+format=${4}
+
+case ${format} in
+"png")
+  generate_thumb_png ${image} ${default_resolution} ${quality}
+  ;;
+"jpg")
+  generate_thumb_jpg ${image} ${default_resolution} ${quality}
+  ;;
+"none")
+  generate_thumb_none ${image} ${default_resolution} ${quality}
+  ;;
+*)
+  echo "Unknown format: $format"
+  exit 1
+  ;;
+esac
\ No newline at end of file
diff --git a/assets/images/gruvbox_dark@220.png b/assets/images/gruvbox_dark@220.png
new file mode 100644
index 0000000000000000000000000000000000000000..ab0724cd1e02ee84bb66832a57107613f12f6968
Binary files /dev/null and b/assets/images/gruvbox_dark@220.png differ
diff --git a/assets/images/gruvbox_dark@266.png b/assets/images/gruvbox_dark@266.png
new file mode 100644
index 0000000000000000000000000000000000000000..c35ff00daf20f92c916d19aec7bb72a26c889236
Binary files /dev/null and b/assets/images/gruvbox_dark@266.png differ
diff --git a/assets/images/gruvbox_dark@335.png b/assets/images/gruvbox_dark@335.png
new file mode 100644
index 0000000000000000000000000000000000000000..dfd1dd528c39e503ece5b04dede7be8098b5e4cd
Binary files /dev/null and b/assets/images/gruvbox_dark@335.png differ
diff --git a/assets/images/gruvbox_dark@352.png b/assets/images/gruvbox_dark@352.png
new file mode 100644
index 0000000000000000000000000000000000000000..ba7053327dff5c6d50126ad9b7981c40c6b25564
Binary files /dev/null and b/assets/images/gruvbox_dark@352.png differ
diff --git a/assets/images/gruvbox_dark@532.png b/assets/images/gruvbox_dark@532.png
new file mode 100644
index 0000000000000000000000000000000000000000..66840dd1a2861cb96d7e95b6493291c6110ccbee
Binary files /dev/null and b/assets/images/gruvbox_dark@532.png differ
diff --git a/assets/images/gruvbox_dark@thumb.jpg b/assets/images/gruvbox_dark@thumb.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..5aecfe0fb80c2b1671fafbfbe2f963ac925cbfd7
Binary files /dev/null and b/assets/images/gruvbox_dark@thumb.jpg differ
diff --git a/assets/images/gruvbox_light@220.png b/assets/images/gruvbox_light@220.png
new file mode 100644
index 0000000000000000000000000000000000000000..b728a0d3a87847ec6dcfdf931b98ba6a827b0db7
Binary files /dev/null and b/assets/images/gruvbox_light@220.png differ
diff --git a/assets/images/gruvbox_light@266.png b/assets/images/gruvbox_light@266.png
new file mode 100644
index 0000000000000000000000000000000000000000..71abe22d64fe18ea451a5fe83ef8a69ae851e0be
Binary files /dev/null and b/assets/images/gruvbox_light@266.png differ
diff --git a/assets/images/gruvbox_light@335.png b/assets/images/gruvbox_light@335.png
new file mode 100644
index 0000000000000000000000000000000000000000..90e89a5c3bb4a013fb8ace23c8a5ed2e84ab7caf
Binary files /dev/null and b/assets/images/gruvbox_light@335.png differ
diff --git a/assets/images/gruvbox_light@352.png b/assets/images/gruvbox_light@352.png
new file mode 100644
index 0000000000000000000000000000000000000000..b90287c9481e7ff4c376cecbd019e35a3e9d7ef5
Binary files /dev/null and b/assets/images/gruvbox_light@352.png differ
diff --git a/assets/images/gruvbox_light@532.png b/assets/images/gruvbox_light@532.png
new file mode 100644
index 0000000000000000000000000000000000000000..909a03d0fb761f5069575b462d22d0f1a1fb5f05
Binary files /dev/null and b/assets/images/gruvbox_light@532.png differ
diff --git a/assets/images/gruvbox_light@thumb.jpg b/assets/images/gruvbox_light@thumb.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..88eebf21803e4506b5c0ad92786d4282e7e359f4
Binary files /dev/null and b/assets/images/gruvbox_light@thumb.jpg differ
diff --git a/assets/images/notifications@363.png b/assets/images/notifications@363.png
new file mode 100644
index 0000000000000000000000000000000000000000..39ddc3ad9be5cfb651bbc85e199d380cf81b4e2b
Binary files /dev/null and b/assets/images/notifications@363.png differ
diff --git a/assets/images/notifications@474.png b/assets/images/notifications@474.png
new file mode 100644
index 0000000000000000000000000000000000000000..28afcf1bc9608099bdf64d2b0b16a65a9cae382a
Binary files /dev/null and b/assets/images/notifications@474.png differ
diff --git a/assets/images/notifications@590.png b/assets/images/notifications@590.png
new file mode 100644
index 0000000000000000000000000000000000000000..5908f14f8cf2f715d9fbdcfce4eaecd00496b925
Binary files /dev/null and b/assets/images/notifications@590.png differ
diff --git a/assets/images/notifications@thumb.jpg b/assets/images/notifications@thumb.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..2a8e0eaa87a3117055f22df83cf0ad4277653681
Binary files /dev/null and b/assets/images/notifications@thumb.jpg differ
diff --git a/assets/images/phone@1000.png b/assets/images/phone@1000.png
new file mode 100644
index 0000000000000000000000000000000000000000..e8b79b8e0aca1d16a8a146763133472c3385b017
Binary files /dev/null and b/assets/images/phone@1000.png differ
diff --git a/assets/images/phone@1220.png b/assets/images/phone@1220.png
new file mode 100644
index 0000000000000000000000000000000000000000..7455a4a9515774b39654ee3859bf355c01588b54
Binary files /dev/null and b/assets/images/phone@1220.png differ
diff --git a/assets/images/phone@220.png b/assets/images/phone@220.png
new file mode 100644
index 0000000000000000000000000000000000000000..115f6e9bb5dc4ffa5cb88ad56d0e15cc6e58cd4a
Binary files /dev/null and b/assets/images/phone@220.png differ
diff --git a/assets/images/phone@300.png b/assets/images/phone@300.png
new file mode 100644
index 0000000000000000000000000000000000000000..796614028112429fd8f033248864df2c0a3d537e
Binary files /dev/null and b/assets/images/phone@300.png differ
diff --git a/assets/images/phone@400.png b/assets/images/phone@400.png
new file mode 100644
index 0000000000000000000000000000000000000000..41c07b169087ea27ed92d83a04841cb3f94a7bbd
Binary files /dev/null and b/assets/images/phone@400.png differ
diff --git a/assets/images/phone@520.png b/assets/images/phone@520.png
new file mode 100644
index 0000000000000000000000000000000000000000..5d84ca12b66f4601d7131c5b59a3b6c8c851b355
Binary files /dev/null and b/assets/images/phone@520.png differ
diff --git a/assets/images/phone@640.png b/assets/images/phone@640.png
new file mode 100644
index 0000000000000000000000000000000000000000..f0990da2cb1b521311c39745eeac1e127ab43cd4
Binary files /dev/null and b/assets/images/phone@640.png differ
diff --git a/assets/images/phone@800.png b/assets/images/phone@800.png
new file mode 100644
index 0000000000000000000000000000000000000000..32028e4e0a0906996088f2de06a7c79749aa9cf7
Binary files /dev/null and b/assets/images/phone@800.png differ
diff --git a/assets/images/phone@thumb.png b/assets/images/phone@thumb.png
new file mode 100644
index 0000000000000000000000000000000000000000..561b0293315b71a5e386abbb02ba5f98e7805ea3
Binary files /dev/null and b/assets/images/phone@thumb.png differ
diff --git a/assets/images/quassel_dark@220.png b/assets/images/quassel_dark@220.png
new file mode 100644
index 0000000000000000000000000000000000000000..e398363f5969f90fc63ef6375c9fc6fcd43ab571
Binary files /dev/null and b/assets/images/quassel_dark@220.png differ
diff --git a/assets/images/quassel_dark@266.png b/assets/images/quassel_dark@266.png
new file mode 100644
index 0000000000000000000000000000000000000000..b00a06d95a934a07f40cfbb7727f4d9d2e6e1768
Binary files /dev/null and b/assets/images/quassel_dark@266.png differ
diff --git a/assets/images/quassel_dark@335.png b/assets/images/quassel_dark@335.png
new file mode 100644
index 0000000000000000000000000000000000000000..c75ed106533faf4377250f9b3fe826c52cc19296
Binary files /dev/null and b/assets/images/quassel_dark@335.png differ
diff --git a/assets/images/quassel_dark@352.png b/assets/images/quassel_dark@352.png
new file mode 100644
index 0000000000000000000000000000000000000000..909fcd6f4ffde8584f6aed3b866f432069888506
Binary files /dev/null and b/assets/images/quassel_dark@352.png differ
diff --git a/assets/images/quassel_dark@532.png b/assets/images/quassel_dark@532.png
new file mode 100644
index 0000000000000000000000000000000000000000..5d89f822ce0a41a4950028097de997b628a65a23
Binary files /dev/null and b/assets/images/quassel_dark@532.png differ
diff --git a/assets/images/quassel_dark@thumb.jpg b/assets/images/quassel_dark@thumb.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..c443c5361ac19704a19eac0a97f3948b8d9afb29
Binary files /dev/null and b/assets/images/quassel_dark@thumb.jpg differ
diff --git a/assets/images/quassel_light@220.png b/assets/images/quassel_light@220.png
new file mode 100644
index 0000000000000000000000000000000000000000..ece04d53f56bcd65082a2e74c71ff761c68e8bd2
Binary files /dev/null and b/assets/images/quassel_light@220.png differ
diff --git a/assets/images/quassel_light@266.png b/assets/images/quassel_light@266.png
new file mode 100644
index 0000000000000000000000000000000000000000..21bcb5c4e3f2d5eb7cc2d437b4ebb180a7e374e5
Binary files /dev/null and b/assets/images/quassel_light@266.png differ
diff --git a/assets/images/quassel_light@335.png b/assets/images/quassel_light@335.png
new file mode 100644
index 0000000000000000000000000000000000000000..9f8d8ec7e172a29a032876e63778c9f8942124d4
Binary files /dev/null and b/assets/images/quassel_light@335.png differ
diff --git a/assets/images/quassel_light@352.png b/assets/images/quassel_light@352.png
new file mode 100644
index 0000000000000000000000000000000000000000..c124cc687760f03e87541f6ec57f00d555792a76
Binary files /dev/null and b/assets/images/quassel_light@352.png differ
diff --git a/assets/images/quassel_light@532.png b/assets/images/quassel_light@532.png
new file mode 100644
index 0000000000000000000000000000000000000000..2483e476751ab37e2f097700dc67ff9b4135d6a8
Binary files /dev/null and b/assets/images/quassel_light@532.png differ
diff --git a/assets/images/quassel_light@thumb.jpg b/assets/images/quassel_light@thumb.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..49635b3920d2f565424d9537199445dc268bb94f
Binary files /dev/null and b/assets/images/quassel_light@thumb.jpg differ
diff --git a/assets/images/solarized_dark@220.png b/assets/images/solarized_dark@220.png
new file mode 100644
index 0000000000000000000000000000000000000000..0cf5fb1c9dcb504a0490e71158f1e1090c072505
Binary files /dev/null and b/assets/images/solarized_dark@220.png differ
diff --git a/assets/images/solarized_dark@266.png b/assets/images/solarized_dark@266.png
new file mode 100644
index 0000000000000000000000000000000000000000..eeb49cc5959616931337c97a944906c9c31cf269
Binary files /dev/null and b/assets/images/solarized_dark@266.png differ
diff --git a/assets/images/solarized_dark@335.png b/assets/images/solarized_dark@335.png
new file mode 100644
index 0000000000000000000000000000000000000000..a5caf4572cf7b8108d51e0b479dc506464fbccc8
Binary files /dev/null and b/assets/images/solarized_dark@335.png differ
diff --git a/assets/images/solarized_dark@352.png b/assets/images/solarized_dark@352.png
new file mode 100644
index 0000000000000000000000000000000000000000..2da897fc8e45d40c984aa1237646763335996b0b
Binary files /dev/null and b/assets/images/solarized_dark@352.png differ
diff --git a/assets/images/solarized_dark@532.png b/assets/images/solarized_dark@532.png
new file mode 100644
index 0000000000000000000000000000000000000000..1a649acac6ab73bb768c079872e31d92547984a4
Binary files /dev/null and b/assets/images/solarized_dark@532.png differ
diff --git a/assets/images/solarized_dark@thumb.jpg b/assets/images/solarized_dark@thumb.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..4a3c548f612fe1405a134579dd2c757932cdcdeb
Binary files /dev/null and b/assets/images/solarized_dark@thumb.jpg differ
diff --git a/assets/images/solarized_light@220.png b/assets/images/solarized_light@220.png
new file mode 100644
index 0000000000000000000000000000000000000000..58665060b832b5077dd2eeec835de2c46871e8ec
Binary files /dev/null and b/assets/images/solarized_light@220.png differ
diff --git a/assets/images/solarized_light@266.png b/assets/images/solarized_light@266.png
new file mode 100644
index 0000000000000000000000000000000000000000..a0a329dac74791a464a278cb7eab336ba59b7c8a
Binary files /dev/null and b/assets/images/solarized_light@266.png differ
diff --git a/assets/images/solarized_light@335.png b/assets/images/solarized_light@335.png
new file mode 100644
index 0000000000000000000000000000000000000000..90c1b917a0b6901fc564c5520069e6e272b1c7c3
Binary files /dev/null and b/assets/images/solarized_light@335.png differ
diff --git a/assets/images/solarized_light@352.png b/assets/images/solarized_light@352.png
new file mode 100644
index 0000000000000000000000000000000000000000..e7c3aee96f20fd1399aac00b295d27c35f54c1da
Binary files /dev/null and b/assets/images/solarized_light@352.png differ
diff --git a/assets/images/solarized_light@532.png b/assets/images/solarized_light@532.png
new file mode 100644
index 0000000000000000000000000000000000000000..46deb7cce60a498f78ca4d92f0d98ce1408283ca
Binary files /dev/null and b/assets/images/solarized_light@532.png differ
diff --git a/assets/images/solarized_light@thumb.jpg b/assets/images/solarized_light@thumb.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..7aebd432b275eb301bbfe437206512f6a51ce385
Binary files /dev/null and b/assets/images/solarized_light@thumb.jpg differ
diff --git a/assets/images/tablet@1090.png b/assets/images/tablet@1090.png
new file mode 100644
index 0000000000000000000000000000000000000000..096b802edc7a5383cfff1409606ad4eb7bb7b7d3
Binary files /dev/null and b/assets/images/tablet@1090.png differ
diff --git a/assets/images/tablet@1635.png b/assets/images/tablet@1635.png
new file mode 100644
index 0000000000000000000000000000000000000000..3e9d46ecfd6df100a41e73efb2c39cd7040f3ade
Binary files /dev/null and b/assets/images/tablet@1635.png differ
diff --git a/assets/images/tablet@2180.png b/assets/images/tablet@2180.png
new file mode 100644
index 0000000000000000000000000000000000000000..47e4a058ce3ffbdbe1dcb9d735eb167274a62424
Binary files /dev/null and b/assets/images/tablet@2180.png differ
diff --git a/assets/images/tablet@545.png b/assets/images/tablet@545.png
new file mode 100644
index 0000000000000000000000000000000000000000..ccd8e2abfbe04db813ade6a04fa77b7b5db82387
Binary files /dev/null and b/assets/images/tablet@545.png differ
diff --git a/assets/images/tablet@640.png b/assets/images/tablet@640.png
new file mode 100644
index 0000000000000000000000000000000000000000..68cfc6e94fd6f6d7acb3e910db88182fcdbebaa5
Binary files /dev/null and b/assets/images/tablet@640.png differ
diff --git a/assets/images/tablet@720.png b/assets/images/tablet@720.png
new file mode 100644
index 0000000000000000000000000000000000000000..6e3efa070a8414f9beb52f705fa072997c8e4399
Binary files /dev/null and b/assets/images/tablet@720.png differ
diff --git a/assets/images/tablet@800.png b/assets/images/tablet@800.png
new file mode 100644
index 0000000000000000000000000000000000000000..8f5f407c0ae170ddc895a1c4d29dc29ce80e027a
Binary files /dev/null and b/assets/images/tablet@800.png differ
diff --git a/assets/images/tablet@880.png b/assets/images/tablet@880.png
new file mode 100644
index 0000000000000000000000000000000000000000..a0bb4fbf072f3207f2ea194d925bb00ca74c6594
Binary files /dev/null and b/assets/images/tablet@880.png differ
diff --git a/assets/images/tablet@960.png b/assets/images/tablet@960.png
new file mode 100644
index 0000000000000000000000000000000000000000..f7b102b0b9eaa1b94d400681abf9c88b3fd0d529
Binary files /dev/null and b/assets/images/tablet@960.png differ
diff --git a/assets/images/tablet@thumb.png b/assets/images/tablet@thumb.png
new file mode 100644
index 0000000000000000000000000000000000000000..5c6a8b914a3e8fb0674aa11a7525f57fe2bed46c
Binary files /dev/null and b/assets/images/tablet@thumb.png differ
diff --git a/assets/images/themes@1180.png b/assets/images/themes@1180.png
new file mode 100644
index 0000000000000000000000000000000000000000..82324eaa72ab8aa706f23e4830561f1c71b4e608
Binary files /dev/null and b/assets/images/themes@1180.png differ
diff --git a/assets/images/themes@363.png b/assets/images/themes@363.png
new file mode 100644
index 0000000000000000000000000000000000000000..ceecc486fd751c59be0ff252bbbbe2097243e612
Binary files /dev/null and b/assets/images/themes@363.png differ
diff --git a/assets/images/themes@474.png b/assets/images/themes@474.png
new file mode 100644
index 0000000000000000000000000000000000000000..c9c78520f30b5f2a282e5f974167481596ecb410
Binary files /dev/null and b/assets/images/themes@474.png differ
diff --git a/assets/images/themes@590.png b/assets/images/themes@590.png
new file mode 100644
index 0000000000000000000000000000000000000000..5545f5d313eb9a13b3238b00b433754d2cb480cc
Binary files /dev/null and b/assets/images/themes@590.png differ
diff --git a/assets/images/themes@726.png b/assets/images/themes@726.png
new file mode 100644
index 0000000000000000000000000000000000000000..a15aacd9d72500f292a562aeffb6ef1da79a58b6
Binary files /dev/null and b/assets/images/themes@726.png differ
diff --git a/assets/images/themes@948.png b/assets/images/themes@948.png
new file mode 100644
index 0000000000000000000000000000000000000000..9c51717efba5325a2381460ba8ec562dec9ea3d5
Binary files /dev/null and b/assets/images/themes@948.png differ
diff --git a/assets/images/themes@thumb.jpg b/assets/images/themes@thumb.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..30d9421a6c24cb53d7ae562f219e295b841924cb
Binary files /dev/null and b/assets/images/themes@thumb.jpg differ