From c2089397450757a7f66ca95570dfb10a18879f20 Mon Sep 17 00:00:00 2001 From: michaelschal <35957947-michaelschal@users.noreply.replit.com> Date: Sat, 4 Oct 2025 10:02:07 +0000 Subject: [PATCH] Update the user interface with a modern, simple, and readable theme Refactored UI components for stat cards and the top bar, introducing gradient backgrounds, rounded elements, improved spacing, and a search input. Replit-Commit-Author: Agent Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda Replit-Commit-Checkpoint-Type: intermediate_checkpoint Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/Ob3gzfQ --- client/src/components/stats-cards.tsx | 61 ++++++++++++++------------- client/src/components/topbar.tsx | 35 +++++++-------- 2 files changed, 48 insertions(+), 48 deletions(-) diff --git a/client/src/components/stats-cards.tsx b/client/src/components/stats-cards.tsx index 81eb806..0051ce6 100644 --- a/client/src/components/stats-cards.tsx +++ b/client/src/components/stats-cards.tsx @@ -1,4 +1,4 @@ -import { CalendarCheck, Users, Bot, Images } from "lucide-react"; +import { CalendarCheck, Users, Bot, Images, TrendingUp, TrendingDown } from "lucide-react"; import { useQuery } from "@tanstack/react-query"; export default function StatsCards() { @@ -9,41 +9,35 @@ export default function StatsCards() { const statCards = [ { icon: CalendarCheck, - iconColor: "text-chart-1", - iconBg: "bg-chart-1/10", + iconColor: "from-blue-500 to-blue-600", title: (stats as any)?.scheduledPosts ?? 0, subtitle: "Publications planifiées", change: "+12%", + trending: "up", changeLabel: "vs mois dernier", - period: "Ce mois", }, { icon: Users, - iconColor: "text-chart-2", - iconBg: "bg-chart-2/10", + iconColor: "from-purple-500 to-purple-600", title: (stats as any)?.connectedPages ?? 0, subtitle: "Pages connectées", info: "Facebook • Instagram", - period: "Total", }, { icon: Bot, - iconColor: "text-chart-3", - iconBg: "bg-chart-3/10", + iconColor: "from-green-500 to-green-600", title: (stats as any)?.aiTextsGenerated ?? 0, subtitle: "Textes générés par IA", change: "+8%", + trending: "up", changeLabel: "vs hier", - period: "Aujourd'hui", }, { icon: Images, - iconColor: "text-chart-4", - iconBg: "bg-chart-4/10", + iconColor: "from-cyan-500 to-cyan-600", title: (stats as any)?.mediaStored ?? 0, subtitle: "Médias stockés", info: "Images • Vidéos", - period: "Bibliothèque", }, ]; @@ -51,10 +45,10 @@ export default function StatsCards() { return (
{[1, 2, 3, 4].map((i) => ( -
-
-
-
+
+
+
+
))}
@@ -65,31 +59,40 @@ export default function StatsCards() {
{statCards.map((stat, index) => { const Icon = stat.icon; + const TrendIcon = stat.trending === "up" ? TrendingUp : TrendingDown; + return (
-
-
- +
+
+
- {stat.period}
-

- {stat.title} -

-

{stat.subtitle}

+ +
+

+ {stat.title} +

+

{stat.subtitle}

+
+ {stat.change && (
- {stat.change} +
+ + {stat.change} +
{stat.changeLabel}
)} + {stat.info && ( -
- {stat.info} +
+ {stat.info}
)}
diff --git a/client/src/components/topbar.tsx b/client/src/components/topbar.tsx index cc45014..6fdf30b 100644 --- a/client/src/components/topbar.tsx +++ b/client/src/components/topbar.tsx @@ -1,4 +1,5 @@ -import { Bell, Menu } from "lucide-react"; +import { Bell, Menu, Search } from "lucide-react"; +import { Input } from "@/components/ui/input"; interface TopBarProps { onMenuClick: () => void; @@ -6,35 +7,31 @@ interface TopBarProps { export default function TopBar({ onMenuClick }: TopBarProps) { return ( -
-
-
+
+
+
-
-

Tableau de bord

-

Gérez vos publications sur tous vos réseaux

+
+
+ + +
- -
-
- SF -
-
-

Social Flow

-

admin@socialflow.app

-
-