diff --git a/frontend/src/assets/app.webmanifest b/frontend/src/assets/app.webmanifest
new file mode 100644
index 0000000..6562865
--- /dev/null
+++ b/frontend/src/assets/app.webmanifest
@@ -0,0 +1,26 @@
+{
+ "theme_color": "#52a756",
+ "background_color": "#121212",
+ "icons": [
+ {
+ "purpose": "maskable",
+ "sizes": "512x512",
+ "src": "image/icon512_maskable.png",
+ "type": "image/png"
+ },
+ {
+ "purpose": "any",
+ "sizes": "512x512",
+ "src": "image/icon512_rounded.png",
+ "type": "image/png"
+ }
+ ],
+ "start_url": "/",
+ "orientation": "portrait",
+ "display": "standalone",
+ "dir": "auto",
+ "lang": "en-US",
+ "name": "Picsur",
+ "short_name": "Picsur",
+ "description": "An easy to use, selfhostable image sharing service"
+}
\ No newline at end of file
diff --git a/frontend/src/assets/image/icon512_maskable.png b/frontend/src/assets/image/icon512_maskable.png
new file mode 100644
index 0000000..ed0b7f8
Binary files /dev/null and b/frontend/src/assets/image/icon512_maskable.png differ
diff --git a/frontend/src/assets/image/icon512_rounded.png b/frontend/src/assets/image/icon512_rounded.png
new file mode 100644
index 0000000..46e2078
Binary files /dev/null and b/frontend/src/assets/image/icon512_rounded.png differ
diff --git a/frontend/src/index.html b/frontend/src/index.html
index 4cdee75..8decc14 100644
--- a/frontend/src/index.html
+++ b/frontend/src/index.html
@@ -7,6 +7,8 @@
href="/assets/branding/logo/picsur.svg"
type="image/svg+xml"
/>
+
+