diff --git a/README.md b/README.md
index b3a653d..a02dbe6 100644
--- a/README.md
+++ b/README.md
@@ -19,6 +19,17 @@ The WordPress theme for 73k.us, based on Bootstrap 5 and PurgeCSS.
 ## Webpack
 The theme uses Webpack as its bundler with ES6 modules for JavaScript files. It also compresses images found in src automatically, and maps images to the appropriate destination through the `@images` alias. For example, `@images/example.jpg` would be compiled to `../images/example.jpg`.
 
+## Hamburgers
+
+The sass for the hamburgers package throws warnings unless fixed:
+
+```bash
+npm i -g sass-migrator
+cd node_modules/hamburgers
+find  _sass/hamburgers/ -type f | while read f; do npx sass-migrator division -d ${f}; done
+cd ../..
+```
+
 ## Deployment 
 ```bash
 npm run build
diff --git a/TODO.md b/TODO.md
index f7a1def..3754db3 100644
--- a/TODO.md
+++ b/TODO.md
@@ -7,11 +7,19 @@
 - [X] ~~*initial webpack config for development*~~ [2021-07-04]
 - [X] ~~*add font handling if possible*~~ [2021-07-04]
 - [X] ~~*add svg sprite handling if possible*~~ [2021-07-04]
-- [ ] svg theme function?
-- [ ] navbar menu
-- [ ] navbar hamburger mobile toggler
-- [ ] properly incorporate favicons (meta links etc)
+- [X] ~~*svg theme function?*~~ [2021-07-06]
+- [X] ~~*navbar menu*~~ [2021-07-06]
+- [X] ~~*navbar hamburger mobile toggler*~~ [2021-07-06]
 - [ ] pore through template files to update theming
+  - [X] ~~*initial front-page.php*~~ [2021-07-06]
+  - [X] ~~*create social-icons working for front page*~~ [2021-07-06]
+  - [ ] create About page and suitable index.php modifications for it
+  - [ ] create some blog entries
+  - [ ] create Blog page and is index.php also ok for it?
+  - [ ] create Resume page and decide on using general or specific template
+  - [ ] create Portfolio placeholder page
+- [ ] properly incorporate favicons (meta links etc)
+  - [ ] include pubkey asc file, others??
 - [ ] purgecss/webpack config for production
 - [ ] double-check npm run build output to ensure it's all working
 - [ ] ...
diff --git a/assets/css/app.scss b/assets/css/app.scss
index b76155b..0dd522f 100644
--- a/assets/css/app.scss
+++ b/assets/css/app.scss
@@ -86,9 +86,18 @@ a {
 }
 .footer73k {
   position: fixed !important;
-  font-size: 10px !important;
+  font-size: 14px !important;
   border-top-left-radius: 0.3rem !important;
   padding-top: 2px;
   padding-bottom: 2px;
 }
 
+/* social icons */
+#social-icons .link-light {
+  border-bottom: none;
+  color: $gray-100;
+  &:hover {
+    color: $primary;
+  }
+}
+
diff --git a/assets/images/cat-roof_portrait.webp b/assets/images/cat-roof_portrait.webp
new file mode 100755
index 0000000..fe75f65
Binary files /dev/null and b/assets/images/cat-roof_portrait.webp differ
diff --git a/assets/js/main.js b/assets/js/main.js
index 41b0d92..8c73703 100644
--- a/assets/js/main.js
+++ b/assets/js/main.js
@@ -20,7 +20,7 @@ import "../../node_modules/@mdi/svg/svg/open-in-new.svg";
 import "../../node_modules/@mdi/svg/svg/linkedin.svg";
 import "../../node_modules/@mdi/svg/svg/github.svg";
 import "../../node_modules/@mdi/svg/svg/key-variant.svg";
-// import "../raw/gitea.svg";
+import "../raw/gitea.svg";
 import "../../node_modules/@mdi/svg/svg/goodreads.svg";
 import "../../node_modules/@mdi/svg/svg/twitter.svg";
 import "../../node_modules/@mdi/svg/svg/facebook.svg";
diff --git a/assets/raw/gitea.svg b/assets/raw/gitea.svg
new file mode 100644
index 0000000..0ad0016
--- /dev/null
+++ b/assets/raw/gitea.svg
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 22.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+<svg version="1.1"
+	 id="svg8" inkscape:export-filename="" inkscape:export-xdpi="48.000004" inkscape:export-ydpi="48.000004" inkscape:version="0.92.1 r15371" sodipodi:docname="logo.svg" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:svg="http://www.w3.org/2000/svg"
+	 xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 512 512"
+	 style="enable-background:new 0 0 512 512;" xml:space="preserve">
+<style type="text/css">
+	.st0{fill:#FFFFFF;}
+	.st1{fill:none;stroke:#000000;stroke-width:2.68;}
+</style>
+<sodipodi:namedview  bordercolor="#666666" borderopacity="1.0" id="base" inkscape:current-layer="layer2" inkscape:cx="418.13805" inkscape:cy="177.57445" inkscape:document-units="mm" inkscape:measure-end="290.267,236.527" inkscape:measure-start="283.373,243.952" inkscape:pagecheckerboard="false" inkscape:pageopacity="0" inkscape:pageshadow="2" inkscape:window-height="1137" inkscape:window-maximized="1" inkscape:window-width="1920" inkscape:window-x="1912" inkscape:window-y="-8" inkscape:zoom="0.70710678" pagecolor="#ffffff" showgrid="false" showguides="false" units="px" width="256px">
+	<sodipodi:guide  id="guide3699" inkscape:locked="false" orientation="0,512" position="0,0"></sodipodi:guide>
+	<sodipodi:guide  id="guide3701" inkscape:locked="false" orientation="-512,0" position="135.46667,0"></sodipodi:guide>
+	<sodipodi:guide  id="guide3703" inkscape:locked="false" orientation="0,-512" position="135.46667,135.46667"></sodipodi:guide>
+	<sodipodi:guide  id="guide3705" inkscape:locked="false" orientation="512,0" position="0,135.46667"></sodipodi:guide>
+</sodipodi:namedview>
+<g id="layer2" inkscape:groupmode="layer" inkscape:label="Layer 2">
+	<path id="rect4599" class="st0" d="M258.2,225.4c5-10.3,17.4-14.6,27.7-9.6"/>
+	<g>
+		<path d="M476.3,129c-77.3,4.1-123.1,6.2-162.4,6.5v87.4l-12.3-6.1l-0.1-81.3c-45.1,0-84.8-2.4-160.1-6.5
+			c-9.4-0.1-22.6-1.9-36.7-1.9C68.6,127,20.3,152.8,23,217.4c4.2,101,96.2,110.4,133,111.2c4,18.9,47.3,84.3,79.4,87.7h140.4
+			C460,410.1,523,130,476.3,129z M58.1,218.9c-3.6-28,9-57.3,56.1-56.1c5.1,51.8,13.4,82,30.3,128.3
+			C101.4,285.4,64.8,271.4,58.1,218.9z M376.4,282.8l-39.3,80.9c-5,10.3-17.4,14.6-27.7,9.6L228.5,334c-10.3-5-14.6-17.4-9.6-27.7
+			l39.3-80.9l27.7-9.6l80.9,39.3C377.1,260.1,381.4,272.5,376.4,282.8z"/>
+	</g>
+	<path id="path4525" inkscape:connector-curvature="0" sodipodi:nodetypes="ccccc" class="st0" d="M301.5,135.5l0.1,81.3"/>
+</g>
+<g id="layer3" inkscape:groupmode="layer" inkscape:label="Layer 3">
+	<g id="g4539">
+		<circle id="path4606" cx="289.8" cy="257.5" r="13.1"/>
+		<circle id="path4606-3" cx="261.6" cy="316" r="13.1"/>
+		<circle id="path4606-1" cx="308" cy="336.8" r="13.1"/>
+		
+			<rect id="rect4629-8" x="231" y="266.2" transform="matrix(0.4388 -0.8986 0.8986 0.4388 -85.169 406.1544)" width="103" height="10.1"/>
+		<path id="path4514" inkscape:connector-curvature="0" sodipodi:nodetypes="cc" class="st1" d="M289.4,257.4
+			c49,24.2,49.2,15.5,18.5,79"/>
+	</g>
+</g>
+</svg>
diff --git a/footer.php b/footer.php
index 014a00a..81e263b 100644
--- a/footer.php
+++ b/footer.php
@@ -12,19 +12,25 @@
 namespace WP_73k;
 
 ?>
-    <footer class="footer relative bg-dark-1 text-light-2 pt-8 pb-16">
+    <!-- <footer class="footer relative bg-dark-1 text-light-2 pt-8 pb-16">
       <div class="relative z-10">
         <div class="container mx-auto">
           <div class="lg:flex lg:justify-between">
             <div class="lg:w-1/4 text-center lg:text-left">
               <div class="text-xl">
-                <p class="text-sm">73k.us is &copy; 2021 by Adam Piontek</p>
+                <p class="text-sm">&copy; 2021 by Adam Piontek</p>
               </div>
             </div>
           </div>
         </div>
       </div>
-    </footer>
+    </footer> -->
+    <footer class="footer73k footer bottom-0 end-0 bg-dark">
+        <div class="px-2 px-sm-3">
+          <span class="text-gray-300">&copy; Copyright <?php echo date("Y") ?> Adam Piontek</span>
+        </div>
+      </footer>
+
     <?php wp_footer(); ?>
   </body>
 </html>
diff --git a/front-page.php b/front-page.php
new file mode 100644
index 0000000..4631e3c
--- /dev/null
+++ b/front-page.php
@@ -0,0 +1,39 @@
+<?php
+/**
+ * The default single page template.
+ *
+ * @author Freeshifter LLC
+ * @since 1.0.0
+ */
+
+namespace WP_73k;
+
+get_header(); ?>
+<main class="container-fluid d-flex justify-content-center align-items-center" style="height: 80%;">
+  <div class="d-flex flex-column-reverse flex-lg-row align-items-lg-end mt-5">
+
+
+    <div class="col-auto mt-3 mt-lg-0">
+        <img src="<?php echo get_stylesheet_directory_uri() ?>/dist/images/cat-roof_portrait.webp" 
+          class="img-fluid border border-20 border-gray-900 rounded-2"
+          alt="My cat Babka, stuck on a roof when she was still just a stray."
+          title="My cat Babka, stuck on a roof when she was still just a stray."
+          />
+    </div>
+
+    <div class="col-auto justify-content-start ms-lg-3">
+
+      <h2 class="fs-2 fw-600 mb-0">
+        <?php echo svg_icon_use("mdi-account", "icon baseline") . "<span>Adam Piontek</span>"; ?>
+      </h2>
+
+      <div class="font-monospace text-gray-300 fs-5">Desktop Systems Engineer. Human.</div>
+
+      <?php echo socials_str(socials()); ?>
+
+    </div>
+
+  </div>
+</main>
+<?php
+get_footer();
diff --git a/functions.php b/functions.php
index 095e053..b53435a 100644
--- a/functions.php
+++ b/functions.php
@@ -18,6 +18,21 @@ function svg_icon_use($icon_name, $div_class) {
   return $output . "</svg></div>";
 };
 
+/**
+ * Social helpers
+ */
+require_once( WP_73k_DIR . '/socials.php' );
+function socials_str($socials) {
+  $out_str = '<div id="social-icons" class="mt-1">';
+  foreach ($socials as $i=>$social) {
+    $pad = $i == 0 ? 'pe-1' : ($i == (count($socials) - 1) ? 'ps-1' : 'px-1');
+    $out_str .= '<a href="' . $social['url'] . '" rel="noreferrer" target="' . $social['target'];
+    $out_str .= '" class="fs-3 link-light text-decoration-none ' . $pad . '">';
+    $out_str .= svg_icon_use($social['icon'], "icon baseline") . "</a>";
+  }
+  return $out_str . '</div>';
+}
+
 /**
  * Autoloader for browersync
  */
diff --git a/header.php b/header.php
index ce9ed53..5ae1bd9 100644
--- a/header.php
+++ b/header.php
@@ -35,7 +35,7 @@ namespace WP_73k;
 
         echo svg_icon_use("mdi-desktop-classic", "icon baseline");
 
-        printf( ' <span class="fw-light font-brand">\\\\%1$s</span>',
+        printf( '<span class="fw-light font-brand">\\\\%1$s</span>',
           esc_html( get_bloginfo( 'name' ) )
         );
 
@@ -72,6 +72,3 @@ namespace WP_73k;
 
   </div>
 </nav>
-
-
-  <main>
\ No newline at end of file
diff --git a/package-lock.json b/package-lock.json
index a88abd3..a4e049a 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -4127,12 +4127,12 @@
       }
     },
     "node_modules/copy-webpack-plugin/node_modules/schema-utils": {
-      "version": "3.0.0",
-      "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.0.0.tgz",
-      "integrity": "sha512-6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA==",
+      "version": "3.1.0",
+      "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.0.tgz",
+      "integrity": "sha512-tTEaeYkyIhEZ9uWgAjDerWov3T9MgX8dhhy2r0IGeeX4W8ngtGl1++dUve/RUqzuaASSh7shwCDJjEzthxki8w==",
       "dev": true,
       "dependencies": {
-        "@types/json-schema": "^7.0.6",
+        "@types/json-schema": "^7.0.7",
         "ajv": "^6.12.5",
         "ajv-keywords": "^3.5.2"
       },
@@ -4296,12 +4296,12 @@
       }
     },
     "node_modules/css-loader/node_modules/schema-utils": {
-      "version": "3.0.0",
-      "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.0.0.tgz",
-      "integrity": "sha512-6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA==",
+      "version": "3.1.0",
+      "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.0.tgz",
+      "integrity": "sha512-tTEaeYkyIhEZ9uWgAjDerWov3T9MgX8dhhy2r0IGeeX4W8ngtGl1++dUve/RUqzuaASSh7shwCDJjEzthxki8w==",
       "dev": true,
       "dependencies": {
-        "@types/json-schema": "^7.0.6",
+        "@types/json-schema": "^7.0.7",
         "ajv": "^6.12.5",
         "ajv-keywords": "^3.5.2"
       },
@@ -4362,12 +4362,12 @@
       }
     },
     "node_modules/css-minimizer-webpack-plugin/node_modules/schema-utils": {
-      "version": "3.0.0",
-      "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.0.0.tgz",
-      "integrity": "sha512-6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA==",
+      "version": "3.1.0",
+      "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.0.tgz",
+      "integrity": "sha512-tTEaeYkyIhEZ9uWgAjDerWov3T9MgX8dhhy2r0IGeeX4W8ngtGl1++dUve/RUqzuaASSh7shwCDJjEzthxki8w==",
       "dev": true,
       "dependencies": {
-        "@types/json-schema": "^7.0.6",
+        "@types/json-schema": "^7.0.7",
         "ajv": "^6.12.5",
         "ajv-keywords": "^3.5.2"
       },
@@ -5057,9 +5057,9 @@
       "dev": true
     },
     "node_modules/electron-to-chromium": {
-      "version": "1.3.766",
-      "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.766.tgz",
-      "integrity": "sha512-u2quJ862q9reRKh/je3GXis3w38+RoXH1J9N3XjtsS6NzmUAosNsyZgUVFZPN/ZlJ3v6T0rTyZR3q/J5c6Sy5w=="
+      "version": "1.3.768",
+      "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.768.tgz",
+      "integrity": "sha512-I4UMZHhVSK2pwt8jOIxTi3GIuc41NkddtKT/hpuxp9GO5UWJgDKTBa4TACppbVAuKtKbMK6BhQZvT5tFF1bcNA=="
     },
     "node_modules/emoji-regex": {
       "version": "8.0.0",
@@ -5835,12 +5835,12 @@
       }
     },
     "node_modules/file-loader/node_modules/schema-utils": {
-      "version": "3.0.0",
-      "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.0.0.tgz",
-      "integrity": "sha512-6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA==",
+      "version": "3.1.0",
+      "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.0.tgz",
+      "integrity": "sha512-tTEaeYkyIhEZ9uWgAjDerWov3T9MgX8dhhy2r0IGeeX4W8ngtGl1++dUve/RUqzuaASSh7shwCDJjEzthxki8w==",
       "dev": true,
       "dependencies": {
-        "@types/json-schema": "^7.0.6",
+        "@types/json-schema": "^7.0.7",
         "ajv": "^6.12.5",
         "ajv-keywords": "^3.5.2"
       },
@@ -8547,12 +8547,12 @@
       }
     },
     "node_modules/mini-css-extract-plugin/node_modules/schema-utils": {
-      "version": "3.0.0",
-      "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.0.0.tgz",
-      "integrity": "sha512-6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA==",
+      "version": "3.1.0",
+      "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.0.tgz",
+      "integrity": "sha512-tTEaeYkyIhEZ9uWgAjDerWov3T9MgX8dhhy2r0IGeeX4W8ngtGl1++dUve/RUqzuaASSh7shwCDJjEzthxki8w==",
       "dev": true,
       "dependencies": {
-        "@types/json-schema": "^7.0.6",
+        "@types/json-schema": "^7.0.7",
         "ajv": "^6.12.5",
         "ajv-keywords": "^3.5.2"
       },
@@ -13018,12 +13018,12 @@
       }
     },
     "node_modules/terser-webpack-plugin/node_modules/schema-utils": {
-      "version": "3.0.0",
-      "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.0.0.tgz",
-      "integrity": "sha512-6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA==",
+      "version": "3.1.0",
+      "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.0.tgz",
+      "integrity": "sha512-tTEaeYkyIhEZ9uWgAjDerWov3T9MgX8dhhy2r0IGeeX4W8ngtGl1++dUve/RUqzuaASSh7shwCDJjEzthxki8w==",
       "dev": true,
       "dependencies": {
-        "@types/json-schema": "^7.0.6",
+        "@types/json-schema": "^7.0.7",
         "ajv": "^6.12.5",
         "ajv-keywords": "^3.5.2"
       },
@@ -13643,9 +13643,9 @@
       }
     },
     "node_modules/webpack": {
-      "version": "5.42.0",
-      "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.42.0.tgz",
-      "integrity": "sha512-Ln8HL0F831t1x/yPB/qZEUVmZM4w9BnHZ1EQD/sAUHv8m22hthoPniWTXEzFMh/Sf84mhrahut22TX5KxWGuyQ==",
+      "version": "5.42.1",
+      "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.42.1.tgz",
+      "integrity": "sha512-msikozzXrG2Hdx+dElq0fyNvxPFsaM2dKLc/l+xkMmhO/1qwVJ9K9gY+fi/49MYWcpSP7alnK5Q78Evrd1LiqQ==",
       "dev": true,
       "dependencies": {
         "@types/eslint-scope": "^3.7.0",
@@ -13842,12 +13842,12 @@
       }
     },
     "node_modules/webpack/node_modules/schema-utils": {
-      "version": "3.0.0",
-      "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.0.0.tgz",
-      "integrity": "sha512-6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA==",
+      "version": "3.1.0",
+      "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.0.tgz",
+      "integrity": "sha512-tTEaeYkyIhEZ9uWgAjDerWov3T9MgX8dhhy2r0IGeeX4W8ngtGl1++dUve/RUqzuaASSh7shwCDJjEzthxki8w==",
       "dev": true,
       "dependencies": {
-        "@types/json-schema": "^7.0.6",
+        "@types/json-schema": "^7.0.7",
         "ajv": "^6.12.5",
         "ajv-keywords": "^3.5.2"
       },
@@ -17221,12 +17221,12 @@
           }
         },
         "schema-utils": {
-          "version": "3.0.0",
-          "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.0.0.tgz",
-          "integrity": "sha512-6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA==",
+          "version": "3.1.0",
+          "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.0.tgz",
+          "integrity": "sha512-tTEaeYkyIhEZ9uWgAjDerWov3T9MgX8dhhy2r0IGeeX4W8ngtGl1++dUve/RUqzuaASSh7shwCDJjEzthxki8w==",
           "dev": true,
           "requires": {
-            "@types/json-schema": "^7.0.6",
+            "@types/json-schema": "^7.0.7",
             "ajv": "^6.12.5",
             "ajv-keywords": "^3.5.2"
           }
@@ -17341,12 +17341,12 @@
           }
         },
         "schema-utils": {
-          "version": "3.0.0",
-          "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.0.0.tgz",
-          "integrity": "sha512-6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA==",
+          "version": "3.1.0",
+          "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.0.tgz",
+          "integrity": "sha512-tTEaeYkyIhEZ9uWgAjDerWov3T9MgX8dhhy2r0IGeeX4W8ngtGl1++dUve/RUqzuaASSh7shwCDJjEzthxki8w==",
           "dev": true,
           "requires": {
-            "@types/json-schema": "^7.0.6",
+            "@types/json-schema": "^7.0.7",
             "ajv": "^6.12.5",
             "ajv-keywords": "^3.5.2"
           }
@@ -17378,12 +17378,12 @@
       },
       "dependencies": {
         "schema-utils": {
-          "version": "3.0.0",
-          "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.0.0.tgz",
-          "integrity": "sha512-6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA==",
+          "version": "3.1.0",
+          "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.0.tgz",
+          "integrity": "sha512-tTEaeYkyIhEZ9uWgAjDerWov3T9MgX8dhhy2r0IGeeX4W8ngtGl1++dUve/RUqzuaASSh7shwCDJjEzthxki8w==",
           "dev": true,
           "requires": {
-            "@types/json-schema": "^7.0.6",
+            "@types/json-schema": "^7.0.7",
             "ajv": "^6.12.5",
             "ajv-keywords": "^3.5.2"
           }
@@ -17919,9 +17919,9 @@
       "dev": true
     },
     "electron-to-chromium": {
-      "version": "1.3.766",
-      "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.766.tgz",
-      "integrity": "sha512-u2quJ862q9reRKh/je3GXis3w38+RoXH1J9N3XjtsS6NzmUAosNsyZgUVFZPN/ZlJ3v6T0rTyZR3q/J5c6Sy5w=="
+      "version": "1.3.768",
+      "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.768.tgz",
+      "integrity": "sha512-I4UMZHhVSK2pwt8jOIxTi3GIuc41NkddtKT/hpuxp9GO5UWJgDKTBa4TACppbVAuKtKbMK6BhQZvT5tFF1bcNA=="
     },
     "emoji-regex": {
       "version": "8.0.0",
@@ -18551,12 +18551,12 @@
           }
         },
         "schema-utils": {
-          "version": "3.0.0",
-          "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.0.0.tgz",
-          "integrity": "sha512-6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA==",
+          "version": "3.1.0",
+          "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.0.tgz",
+          "integrity": "sha512-tTEaeYkyIhEZ9uWgAjDerWov3T9MgX8dhhy2r0IGeeX4W8ngtGl1++dUve/RUqzuaASSh7shwCDJjEzthxki8w==",
           "dev": true,
           "requires": {
-            "@types/json-schema": "^7.0.6",
+            "@types/json-schema": "^7.0.7",
             "ajv": "^6.12.5",
             "ajv-keywords": "^3.5.2"
           }
@@ -20621,12 +20621,12 @@
           }
         },
         "schema-utils": {
-          "version": "3.0.0",
-          "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.0.0.tgz",
-          "integrity": "sha512-6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA==",
+          "version": "3.1.0",
+          "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.0.tgz",
+          "integrity": "sha512-tTEaeYkyIhEZ9uWgAjDerWov3T9MgX8dhhy2r0IGeeX4W8ngtGl1++dUve/RUqzuaASSh7shwCDJjEzthxki8w==",
           "dev": true,
           "requires": {
-            "@types/json-schema": "^7.0.6",
+            "@types/json-schema": "^7.0.7",
             "ajv": "^6.12.5",
             "ajv-keywords": "^3.5.2"
           }
@@ -24053,12 +24053,12 @@
       },
       "dependencies": {
         "schema-utils": {
-          "version": "3.0.0",
-          "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.0.0.tgz",
-          "integrity": "sha512-6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA==",
+          "version": "3.1.0",
+          "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.0.tgz",
+          "integrity": "sha512-tTEaeYkyIhEZ9uWgAjDerWov3T9MgX8dhhy2r0IGeeX4W8ngtGl1++dUve/RUqzuaASSh7shwCDJjEzthxki8w==",
           "dev": true,
           "requires": {
-            "@types/json-schema": "^7.0.6",
+            "@types/json-schema": "^7.0.7",
             "ajv": "^6.12.5",
             "ajv-keywords": "^3.5.2"
           }
@@ -24526,9 +24526,9 @@
       }
     },
     "webpack": {
-      "version": "5.42.0",
-      "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.42.0.tgz",
-      "integrity": "sha512-Ln8HL0F831t1x/yPB/qZEUVmZM4w9BnHZ1EQD/sAUHv8m22hthoPniWTXEzFMh/Sf84mhrahut22TX5KxWGuyQ==",
+      "version": "5.42.1",
+      "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.42.1.tgz",
+      "integrity": "sha512-msikozzXrG2Hdx+dElq0fyNvxPFsaM2dKLc/l+xkMmhO/1qwVJ9K9gY+fi/49MYWcpSP7alnK5Q78Evrd1LiqQ==",
       "dev": true,
       "requires": {
         "@types/eslint-scope": "^3.7.0",
@@ -24563,12 +24563,12 @@
           "dev": true
         },
         "schema-utils": {
-          "version": "3.0.0",
-          "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.0.0.tgz",
-          "integrity": "sha512-6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA==",
+          "version": "3.1.0",
+          "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.0.tgz",
+          "integrity": "sha512-tTEaeYkyIhEZ9uWgAjDerWov3T9MgX8dhhy2r0IGeeX4W8ngtGl1++dUve/RUqzuaASSh7shwCDJjEzthxki8w==",
           "dev": true,
           "requires": {
-            "@types/json-schema": "^7.0.6",
+            "@types/json-schema": "^7.0.7",
             "ajv": "^6.12.5",
             "ajv-keywords": "^3.5.2"
           }
diff --git a/socials.php b/socials.php
new file mode 100644
index 0000000..9d5a5bf
--- /dev/null
+++ b/socials.php
@@ -0,0 +1,63 @@
+<?php
+/**
+ * Functions to help with social icons
+ */
+
+// definition of social icons:
+
+function socials() {
+  return array(
+    array(
+      'icon' => "mdi-typewriter",
+      'url' => '/blog',
+      'prof' => false,
+      'target' => "_self"
+    ),
+    array('icon' => "mdi-rss", 'url' => '/feed', 'prof' => false, 'target' => "_blank"),
+    array(
+      'icon' => "mdi-linkedin",
+      'url' => "https://www.linkedin.com/in/adampiontek/",
+      'prof' => true,
+      'target' => "_blank"
+    ),
+    array('icon' => "mdi-github", 'url' => "https://github.com/apiontek", 'prof' => true, 'target' => "_blank"),
+    array('icon' => "gitea", 'url' => "https://73k.us/git/adam", 'prof' => true, 'target' => "_blank"),
+    array(
+      'icon' => "mdi-key-variant",
+      'url' => '/DF185CEE29A3D443_public_key.asc',
+      'prof' => true,
+      'target' => "_blank"
+    ),
+    array(
+      'icon' => "mdi-goodreads",
+      'url' => "https://www.goodreads.com/user/show/2450014-adam-piontek",
+      'prof' => false,
+      'target' => "_blank"
+    ),
+    array(
+      'icon' => "mdi-twitter",
+      'url' => "https://twitter.com/adampiontek",
+      'prof' => false,
+      'target' => "_blank"
+    ),
+    array('icon' => "mdi-facebook", 'url' => "https://facebook.com/damek", 'prof' => false, 'target' => "_blank"),
+    array(
+      'icon' => "mdi-instagram",
+      'url' => "https://www.instagram.com/adampiontek/",
+      'prof' => false,
+      'target' => "_blank"
+    ),
+    array(
+      'icon' => "mdi-steam",
+      'url' => "https://steamcommunity.com/id/apiontek/",
+      'prof' => false,
+      'target' => "_blank"
+    ),
+    array(
+      'icon' => "mdi-discord",
+      'url' => "https://discordapp.com/users/328583977629646848",
+      'prof' => false,
+      'target' => "_blank"
+    )
+  );
+}
diff --git a/src/classes.php b/src/classes.php
index 94d48a1..bcd478f 100644
--- a/src/classes.php
+++ b/src/classes.php
@@ -59,7 +59,7 @@ add_filter( 'wp_nav_menu_objects', function($items, $args) {
     foreach ($object->classes as $c) {
       if (substr( $c, 0, strlen( $svgicon_prefix ) ) === $svgicon_prefix) {
         $icon_slug = str_replace($svgicon_prefix, '', $c);
-        $object->title = svg_icon_use($icon_slug, 'icon baseline') . ' ' . $object->title;
+        $object->title = svg_icon_use($icon_slug, 'icon baseline') . $object->title;
       }
     }
   }