diff --git a/layouts/partials/favicons.hbs b/layouts/partials/favicons.hbs
new file mode 100644
index 0000000000000..c0ee0666bf65f
--- /dev/null
+++ b/layouts/partials/favicons.hbs
@@ -0,0 +1,9 @@
+
+
+
+
+
+
+
+
+
diff --git a/layouts/partials/html-head.hbs b/layouts/partials/html-head.hbs
index 281c26784dc5b..ac0add144c7b0 100644
--- a/layouts/partials/html-head.hbs
+++ b/layouts/partials/html-head.hbs
@@ -10,8 +10,7 @@
-
-
+ {{> favicons }}
diff --git a/static/apple-touch-icon.png b/static/apple-touch-icon.png
deleted file mode 100644
index 80838652908d3..0000000000000
Binary files a/static/apple-touch-icon.png and /dev/null differ
diff --git a/static/favicon.ico b/static/favicon.ico
deleted file mode 100644
index 1d9bd09ddede5..0000000000000
Binary files a/static/favicon.ico and /dev/null differ
diff --git a/static/favicon.png b/static/favicon.png
deleted file mode 100644
index 974acbf15ec70..0000000000000
Binary files a/static/favicon.png and /dev/null differ
diff --git a/static/images/favicons/android-chrome-192x192.png b/static/images/favicons/android-chrome-192x192.png
new file mode 100644
index 0000000000000..3795666b2b2eb
Binary files /dev/null and b/static/images/favicons/android-chrome-192x192.png differ
diff --git a/static/images/favicons/android-chrome-512x512.png b/static/images/favicons/android-chrome-512x512.png
new file mode 100644
index 0000000000000..fa8011f11c17f
Binary files /dev/null and b/static/images/favicons/android-chrome-512x512.png differ
diff --git a/static/images/favicons/apple-touch-icon.png b/static/images/favicons/apple-touch-icon.png
new file mode 100644
index 0000000000000..ac5cddc03fa6f
Binary files /dev/null and b/static/images/favicons/apple-touch-icon.png differ
diff --git a/static/images/favicons/browserconfig.xml b/static/images/favicons/browserconfig.xml
new file mode 100644
index 0000000000000..092d662eed9b1
--- /dev/null
+++ b/static/images/favicons/browserconfig.xml
@@ -0,0 +1,9 @@
+
+
+
+
+
+ #333333
+
+
+
diff --git a/static/images/favicons/favicon-16x16.png b/static/images/favicons/favicon-16x16.png
new file mode 100644
index 0000000000000..123708ee7700f
Binary files /dev/null and b/static/images/favicons/favicon-16x16.png differ
diff --git a/static/images/favicons/favicon-32x32.png b/static/images/favicons/favicon-32x32.png
new file mode 100644
index 0000000000000..609ad7b4cd0cc
Binary files /dev/null and b/static/images/favicons/favicon-32x32.png differ
diff --git a/static/images/favicons/favicon.ico b/static/images/favicons/favicon.ico
new file mode 100644
index 0000000000000..0c939c7d4ba52
Binary files /dev/null and b/static/images/favicons/favicon.ico differ
diff --git a/static/images/favicons/manifest.json b/static/images/favicons/manifest.json
new file mode 100644
index 0000000000000..1c3c5ecd3446d
--- /dev/null
+++ b/static/images/favicons/manifest.json
@@ -0,0 +1,19 @@
+{
+ "name": "Node.js",
+ "short_name": "Node.js",
+ "icons": [
+ {
+ "src": "/static/images/favicons/android-chrome-192x192.png",
+ "sizes": "192x192",
+ "type": "image/png"
+ },
+ {
+ "src": "/static/images/favicons/android-chrome-512x512.png",
+ "sizes": "512x512",
+ "type": "image/png"
+ }
+ ],
+ "theme_color": "#333333",
+ "background_color": "#333333",
+ "display": "standalone"
+}
diff --git a/static/images/favicons/mstile-150x150.png b/static/images/favicons/mstile-150x150.png
new file mode 100644
index 0000000000000..50958cae8009e
Binary files /dev/null and b/static/images/favicons/mstile-150x150.png differ
diff --git a/static/images/favicons/safari-pinned-tab.svg b/static/images/favicons/safari-pinned-tab.svg
new file mode 100644
index 0000000000000..248e89dd06f54
--- /dev/null
+++ b/static/images/favicons/safari-pinned-tab.svg
@@ -0,0 +1 @@
+
\ No newline at end of file