From 994b691239cec11eefb24cc4fa262f633fa77cd3 Mon Sep 17 00:00:00 2001 From: Osama Mabkhot <99215291+O2sa@users.noreply.github.com> Date: Thu, 13 Aug 2026 03:27:16 +0300 Subject: [PATCH 1/4] fix: prevent theme flash on initial load --- app/layout.tsx | 10 ++++++---- components/theme-provider.tsx | 1 + 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/app/layout.tsx b/app/layout.tsx index cf1565a..5865918 100644 --- a/app/layout.tsx +++ b/app/layout.tsx @@ -2,7 +2,6 @@ import "./globals.css"; import type { ReactNode } from "react"; import type { Metadata } from "next"; import { cookies, headers } from "next/headers"; -import Script from "next/script"; import { DEFAULT_LOCALE, LOCALE_COOKIE, @@ -112,10 +111,13 @@ export default async function RootLayout({ children }: { children: ReactNode }) return ( + + {children} diff --git a/components/theme-provider.tsx b/components/theme-provider.tsx index 75a06f3..cadf070 100644 --- a/components/theme-provider.tsx +++ b/components/theme-provider.tsx @@ -9,6 +9,7 @@ export function ThemeProvider({ children }: { children: ReactNode }) { attribute="class" defaultTheme="system" enableSystem + enableColorScheme storageKey="devimpact-theme" > {children} From 8b05b65a72d800af6a8b6890bb67d4728e5dc033 Mon Sep 17 00:00:00 2001 From: Osama Mabkhot <99215291+O2sa@users.noreply.github.com> Date: Thu, 13 Aug 2026 23:26:36 +0300 Subject: [PATCH 2/4] fix: Prevent home page skeleton from covering the whole page --- app/page.tsx | 60 ++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 58 insertions(+), 2 deletions(-) diff --git a/app/page.tsx b/app/page.tsx index 7c58084..c3a57fe 100644 --- a/app/page.tsx +++ b/app/page.tsx @@ -1,7 +1,9 @@ import type { Metadata } from "next"; import { Suspense } from "react"; -import { DashboardSkeleton } from "@/components/skeletons"; +import { AppFooter } from "@/components/app-footer"; +import { AppHeader } from "@/components/app-header"; import { HomePageClient } from "@/components/home-page-client"; +import { Skeleton } from "@/components/ui/skeleton"; import { JsonLd } from "@/components/seo/json-ld"; import { toAbsoluteUrl } from "@/lib/seo"; @@ -63,11 +65,65 @@ const softwareSchema = { }, }; +function HomePageFallback() { + return ( +
+ + +
+
+
+ + + +
+ +
+
+
+ + +
+
+ + +
+
+ +
+ +
+ {Array.from({ length: 8 }).map((_, index) => ( + + ))} +
+
+ +
+ + + +
+
+
+ +
+ + + +
+
+ + +
+ ); +} + export default function HomePage() { return ( <> - }> + }> From cd0b9927b44f03633a510ad56a4cddf08b37c52d Mon Sep 17 00:00:00 2001 From: Osama Mabkhot <99215291+O2sa@users.noreply.github.com> Date: Thu, 13 Aug 2026 23:41:03 +0300 Subject: [PATCH 3/4] chore: remove next-env.d.ts from the repository --- .gitignore | 1 + next-env.d.ts | 6 ------ 2 files changed, 1 insertion(+), 6 deletions(-) delete mode 100644 next-env.d.ts diff --git a/.gitignore b/.gitignore index 93bdc13..ef5d71d 100644 --- a/.gitignore +++ b/.gitignore @@ -81,6 +81,7 @@ out # Nuxt.js build / generate output .nuxt dist +next-env.d.ts # Gatsby files .cache/ diff --git a/next-env.d.ts b/next-env.d.ts deleted file mode 100644 index c4b7818..0000000 --- a/next-env.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -/// -/// -import "./.next/dev/types/routes.d.ts"; - -// NOTE: This file should not be edited -// see https://nextjs.org/docs/app/api-reference/config/typescript for more information. From 7b855fcac52fa79e6ae6d42e041996ee103ea05a Mon Sep 17 00:00:00 2001 From: Osama Mabkhot <99215291+O2sa@users.noreply.github.com> Date: Fri, 14 Aug 2026 00:29:04 +0300 Subject: [PATCH 4/4] style: update top right gradient color to match the app identity Co-authored-by: Copilot --- app/globals.css | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/app/globals.css b/app/globals.css index 65ff396..794cfbc 100644 --- a/app/globals.css +++ b/app/globals.css @@ -74,16 +74,16 @@ body::after { body::before { background-image: - radial-gradient(circle at 20% 20%, rgba(59, 130, 246, 0.08), transparent 35%), - radial-gradient(circle at 80% 0%, rgba(168, 85, 247, 0.08), transparent 30%), + radial-gradient(circle at 20% 20%, hsl(var(--primary) / 0.08), transparent 35%), + radial-gradient(circle at 80% 0%, hsl(var(--accent) / 0.08), transparent 30%), linear-gradient(180deg, #f8fbff 0%, #f2f5f9 40%, #f9fafb 100%); opacity: 1; } body::after { background-image: - radial-gradient(circle at 20% 20%, rgba(59, 130, 246, 0.08), transparent 35%), - radial-gradient(circle at 80% 0%, rgba(124, 58, 237, 0.12), transparent 30%), + radial-gradient(circle at 20% 20%, hsl(var(--primary) / 0.08), transparent 35%), + radial-gradient(circle at 80% 0%, hsl(var(--accent) / 0.12), transparent 30%), linear-gradient(180deg, #0f172a 0%, #0b1221 40%, #0a0f1c 100%); opacity: 0; }