diff --git a/public/icon-512.png b/public/icon-512.png
new file mode 100644
index 00000000..de71d520
Binary files /dev/null and b/public/icon-512.png differ
diff --git a/public/index.html b/public/index.html
index 9c812017..4460c595 100644
--- a/public/index.html
+++ b/public/index.html
@@ -23,6 +23,7 @@
<%= htmlWebpackPlugin.options.title %> | <%= htmlWebpackPlugin.options.version %>
+
diff --git a/public/manifest.json b/public/manifest.json
new file mode 100644
index 00000000..c6343d5f
--- /dev/null
+++ b/public/manifest.json
@@ -0,0 +1,18 @@
+{
+ "short_name": "InBrowser IPFS",
+ "name": "InBrowser IPFS Gateway",
+ "icons": [
+ {
+ "src": "/icon-512.png",
+ "type": "image/png",
+ "sizes": "512x512"
+ }
+ ],
+ "id": "/?source=pwa",
+ "start_url": "/?source=pwa",
+ "background_color": "#0B3A53",
+ "display": "standalone",
+ "scope": "/",
+ "theme_color": "#0B3A53",
+ "description": "An experimental IPFS Gateway implemented as a Service Worker with @helia/verified-fetch"
+}
diff --git a/src/components/input-validator.tsx b/src/components/input-validator.tsx
index a2864bf3..fa93f42d 100644
--- a/src/components/input-validator.tsx
+++ b/src/components/input-validator.tsx
@@ -80,7 +80,7 @@ export default function InputValidator ({ requestPath }: { requestPath: string }
return (
-
+
diff --git a/webpack.config.js b/webpack.config.js
index b0584f4a..da4e0c14 100644
--- a/webpack.config.js
+++ b/webpack.config.js
@@ -210,6 +210,14 @@ const common = {
{
from: `${paths.public}/_redirects`,
noErrorOnMissing: false
+ },
+ {
+ from: `${paths.public}/manifest.json`,
+ noErrorOnMissing: false
+ },
+ {
+ from: `${paths.public}/icon-512.png`,
+ noErrorOnMissing: false
}
]
}),