diff --git a/app/(dashboard)/_components/board-list.tsx b/app/(dashboard)/_components/board-list.tsx
index 0e8cd11..9e4f6a8 100644
--- a/app/(dashboard)/_components/board-list.tsx
+++ b/app/(dashboard)/_components/board-list.tsx
@@ -1,7 +1,7 @@
"use client";
import { useSearchParams } from "next/navigation";
-import { useMemo } from "react";
+import { useMemo, useEffect } from "react";
import { EmptySearch } from "./empty-search";
import { EmptyFavorites } from "./empty-favorites";
import { EmptyBoards } from "./empty-boards";
@@ -17,7 +17,27 @@ interface BoardListProps {
export const BoardList = ({ orgId }: BoardListProps) => {
const searchParams = useSearchParams();
- // Use `useMemo()` to extract values safely
+ // Inject keyframes dynamically since no global CSS is used
+ useEffect(() => {
+ const style = document.createElement("style");
+ style.innerHTML = `
+ @keyframes orb1 {
+ 0% { transform: translate(0, 0) scale(1); }
+ 50% { transform: translate(30px, 20px) scale(1.1); }
+ 100% { transform: translate(0, 0) scale(1); }
+ }
+ @keyframes orb2 {
+ 0% { transform: translate(0, 0) scale(1); }
+ 50% { transform: translate(-30px, -20px) scale(1.1); }
+ 100% { transform: translate(0, 0) scale(1); }
+ }
+ `;
+ document.head.appendChild(style);
+ return () => {
+ document.head.removeChild(style);
+ };
+ }, []);
+
const search = useMemo(
() => searchParams.get("search") || undefined,
[searchParams]
@@ -27,21 +47,43 @@ export const BoardList = ({ orgId }: BoardListProps) => {
[searchParams]
);
- // Fetch data using query params
const data = useQuery(api.boards.get, { orgId, search, favorites });
if (data === undefined) {
return (
-
-
- {favorites ? "Favorite Boards" : "Team Boards"}
-
-
-
-
-
-
-
+
+ {/* Beautiful Background */}
+
+
+
+
+ {favorites ? "Favorite Boards" : "Team Boards"}
+
+
+
+
+
+
+
+
);
@@ -60,25 +102,48 @@ export const BoardList = ({ orgId }: BoardListProps) => {
}
return (
-
-
- {favorites ? "Favorite Boards" : "Team Boards"}
-
-
-
- {data.map((board) => (
-
- ))}
+
+
+
+
+
+
+ {favorites ? "Favorite Boards" : "Team Boards"}
+
+
+
+ {data.map((board) => (
+
+ ))}
+
);
diff --git a/app/(dashboard)/_components/org-sidebar.tsx b/app/(dashboard)/_components/org-sidebar.tsx
index 3e0c66d..683d73c 100644
--- a/app/(dashboard)/_components/org-sidebar.tsx
+++ b/app/(dashboard)/_components/org-sidebar.tsx
@@ -1,13 +1,14 @@
"use client";
+
import Link from "next/link";
import Image from "next/image";
import { Poppins } from "next/font/google";
import { cn } from "@/lib/utils";
import { OrganizationSwitcher } from "@clerk/nextjs";
import { Button } from "@/components/ui/button";
-import { LayoutDashboard, Star } from "lucide-react";
-
+import { LayoutDashboard, Star, Sparkles, Grid3X3 } from "lucide-react";
import { useSearchParams } from "next/navigation";
+
const font = Poppins({
subsets: ["latin"],
weight: ["600"],
@@ -18,67 +19,170 @@ export const OrgSidebar = () => {
const favorites = searchParams.get("favorites");
return (
-
-
-
-
-
- Board
-
-
-
-
-
-
-
);
-};
+};
\ No newline at end of file
diff --git a/app/(dashboard)/_components/sidebar/index.tsx b/app/(dashboard)/_components/sidebar/index.tsx
index 0f64d0d..8980fc1 100644
--- a/app/(dashboard)/_components/sidebar/index.tsx
+++ b/app/(dashboard)/_components/sidebar/index.tsx
@@ -3,9 +3,17 @@ import { NewButton } from "./new-button";
export const Sidebar = () => {
return (
-