diff --git a/src/lib/components/Offline.svelte b/src/lib/components/Offline.svelte
new file mode 100644
index 0000000..0a8a00e
--- /dev/null
+++ b/src/lib/components/Offline.svelte
@@ -0,0 +1,72 @@
+
+
+
+
YOU ARE OFFLINE
+
+
Please check your internet connection.
+
+ An internet connection is required to sync your wallet and make
+ transactions.
+
+
+
+
diff --git a/src/lib/online.svelte.ts b/src/lib/online.svelte.ts
new file mode 100644
index 0000000..cf71c57
--- /dev/null
+++ b/src/lib/online.svelte.ts
@@ -0,0 +1,24 @@
+import { writable } from "svelte/store";
+
+function createOnline() {
+ const { subscribe, set } = writable(navigator.onLine);
+
+ function handleOnline() {
+ set(true);
+ }
+
+ function handleOffline() {
+ set(false);
+ }
+
+ if (typeof window !== "undefined") {
+ window.addEventListener("online", handleOnline);
+ window.addEventListener("offline", handleOffline);
+ }
+
+ return {
+ subscribe,
+ };
+}
+
+export const online = createOnline();
diff --git a/src/routes/+layout.svelte b/src/routes/+layout.svelte
index 5d09bcb..eef1997 100644
--- a/src/routes/+layout.svelte
+++ b/src/routes/+layout.svelte
@@ -94,7 +94,9 @@
- {#if showInstallPrompt && deferredPrompt}
+ {#if !$online}
+
+ {:else if showInstallPrompt && deferredPrompt}
{:else if showSplash}