diff --git a/apps/web/src/app/dashboard/loading.tsx b/apps/web/src/app/dashboard/loading.tsx
new file mode 100644
index 0000000..1c01283
--- /dev/null
+++ b/apps/web/src/app/dashboard/loading.tsx
@@ -0,0 +1,41 @@
+export default function DashboardLoading() {
+ return (
+
+ {/* Header Skeleton */}
+
+
+
+ {/* Health Score Skeleton */}
+
+
+ {/* Bus Factor Skeleton */}
+
+
+ {/* Resilience Skeleton */}
+
+
+
+ {/* Stats Grid Skeleton */}
+
+ {Array.from({ length: 2 }).map((_, i) => (
+
+ ))}
+
+
+
+ {/* Evidence Panels Skeleton */}
+
+
+
+ {Array.from({ length: 4 }).map((_, i) => (
+
+ ))}
+
+
+
+ {/* Timeline Skeleton */}
+
+
+
+ {Array.from({ length: 5 }).map((_, i) => (
+ -
+
+
+
+ ))}
+
+
+
+ );
+}