Index: backend/controllers/taskController.js
===================================================================
--- backend/controllers/taskController.js	(revision ec388aa9564587cbd0aefb1f4fc1922f19afa485)
+++ backend/controllers/taskController.js	(revision e08f729d597e558b87f81375e7240ecd63e86070)
@@ -184,4 +184,64 @@
       .status(500)
       .json({ message: "Internal server error", error: error.message });
+  }
+};
+
+const searchTaskByDate = async (req, res) => {
+  const { date } = req.query;
+
+  try {
+    const parsedDate = new Date(date);
+    const startOfDay = new Date(parsedDate.setHours(0, 0, 0, 0));
+    const endOfDay = new Date(parsedDate.setHours(24, 0, 0, 0));
+
+    const challenges = await prisma.challenges.findMany({
+      where: {
+        solving_date: {
+          gte: startOfDay,
+          lt: endOfDay,
+        },
+      },
+      include: {
+        test_cases: true,
+      },
+    });
+    if (challenges.length === 0) {
+      return res.status(404).json({ message: "No tasks found for this date" });
+    }
+    const safeSerialize = (data) => {
+      return JSON.parse(
+        JSON.stringify(data, (key, value) => {
+          if (value instanceof Date) {
+            return value.toISOString();
+          }
+          if (typeof value === "bigint") {
+            return value.toString();
+          }
+          return value;
+        })
+      );
+    };
+    const parsedChallenges = challenges.map((task) => {
+      const safeTask = safeSerialize(task);
+
+      if (safeTask.test_cases) {
+        safeTask.test_cases = safeTask.test_cases.map((testCase) => ({
+          id: testCase.id,
+          input: testCase.input || "",
+          output: testCase.output || "",
+          challenge_id: testCase.challenge_id,
+        }));
+      }
+
+      return safeTask;
+    });
+    res.status(200).json(parsedChallenges);
+  } catch (error) {
+    console.error("Error searching tasks by date:", error);
+    res.status(500).json({
+      message: "Internal server error",
+      error: error.message,
+      stack: process.env.NODE_ENV === "development" ? error.stack : undefined,
+    });
   }
 };
@@ -594,4 +654,5 @@
 module.exports = {
   getTaskByDate,
+  searchTaskByDate,
   getSpecificTestCaseById,
   updateUserDailyChallengeId,
Index: backend/routers/taskRouter.js
===================================================================
--- backend/routers/taskRouter.js	(revision ec388aa9564587cbd0aefb1f4fc1922f19afa485)
+++ backend/routers/taskRouter.js	(revision e08f729d597e558b87f81375e7240ecd63e86070)
@@ -8,4 +8,5 @@
 router.get("/:id/test-cases", taskController.getAllTestCasesForTask);
 router.get("/test-cases/:testCaseId", taskController.getSpecificTestCaseById);
+router.get("/search", taskController.searchTaskByDate);
 router.put(
   "/users/:userId/daily-test-case-id",
Index: client/package-lock.json
===================================================================
--- client/package-lock.json	(revision ec388aa9564587cbd0aefb1f4fc1922f19afa485)
+++ client/package-lock.json	(revision e08f729d597e558b87f81375e7240ecd63e86070)
@@ -17,4 +17,6 @@
         "lucide-react": "^0.503.0",
         "react": "^19.0.0",
+        "react-daisyui-timetools": "^2.0.2",
+        "react-datepicker": "^8.4.0",
         "react-dom": "^19.0.0",
         "react-router-dom": "^7.5.3",
@@ -36,9 +38,21 @@
       }
     },
+    "node_modules/@alloc/quick-lru": {
+      "version": "5.2.0",
+      "resolved": "https://registry.npmjs.org/@alloc/quick-lru/-/quick-lru-5.2.0.tgz",
+      "integrity": "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==",
+      "license": "MIT",
+      "peer": true,
+      "engines": {
+        "node": ">=10"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/sindresorhus"
+      }
+    },
     "node_modules/@ampproject/remapping": {
       "version": "2.3.0",
       "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz",
       "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==",
-      "dev": true,
       "license": "Apache-2.0",
       "dependencies": {
@@ -883,4 +897,57 @@
       }
     },
+    "node_modules/@floating-ui/core": {
+      "version": "1.7.2",
+      "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.7.2.tgz",
+      "integrity": "sha512-wNB5ooIKHQc+Kui96jE/n69rHFWAVoxn5CAzL1Xdd8FG03cgY3MLO+GF9U3W737fYDSgPWA6MReKhBQBop6Pcw==",
+      "license": "MIT",
+      "dependencies": {
+        "@floating-ui/utils": "^0.2.10"
+      }
+    },
+    "node_modules/@floating-ui/dom": {
+      "version": "1.7.2",
+      "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.7.2.tgz",
+      "integrity": "sha512-7cfaOQuCS27HD7DX+6ib2OrnW+b4ZBwDNnCcT0uTyidcmyWb03FnQqJybDBoCnpdxwBSfA94UAYlRCt7mV+TbA==",
+      "license": "MIT",
+      "dependencies": {
+        "@floating-ui/core": "^1.7.2",
+        "@floating-ui/utils": "^0.2.10"
+      }
+    },
+    "node_modules/@floating-ui/react": {
+      "version": "0.27.13",
+      "resolved": "https://registry.npmjs.org/@floating-ui/react/-/react-0.27.13.tgz",
+      "integrity": "sha512-Qmj6t9TjgWAvbygNEu1hj4dbHI9CY0ziCMIJrmYoDIn9TUAH5lRmiIeZmRd4c6QEZkzdoH7jNnoNyoY1AIESiA==",
+      "license": "MIT",
+      "dependencies": {
+        "@floating-ui/react-dom": "^2.1.4",
+        "@floating-ui/utils": "^0.2.10",
+        "tabbable": "^6.0.0"
+      },
+      "peerDependencies": {
+        "react": ">=17.0.0",
+        "react-dom": ">=17.0.0"
+      }
+    },
+    "node_modules/@floating-ui/react-dom": {
+      "version": "2.1.4",
+      "resolved": "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.1.4.tgz",
+      "integrity": "sha512-JbbpPhp38UmXDDAu60RJmbeme37Jbgsm7NrHGgzYYFKmblzRUh6Pa641dII6LsjwF4XlScDrde2UAzDo/b9KPw==",
+      "license": "MIT",
+      "dependencies": {
+        "@floating-ui/dom": "^1.7.2"
+      },
+      "peerDependencies": {
+        "react": ">=16.8.0",
+        "react-dom": ">=16.8.0"
+      }
+    },
+    "node_modules/@floating-ui/utils": {
+      "version": "0.2.10",
+      "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.10.tgz",
+      "integrity": "sha512-aGTxbpbg8/b5JfU1HXSrbH3wXZuLPJcNEcZQFMxLs3oSzgtVu6nFPkbbGGUvBcUjKV2YyB9Wxxabo+HEH9tcRQ==",
+      "license": "MIT"
+    },
     "node_modules/@humanfs/core": {
       "version": "0.19.1",
@@ -965,5 +1032,4 @@
       "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz",
       "integrity": "sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==",
-      "dev": true,
       "license": "MIT",
       "dependencies": {
@@ -980,5 +1046,4 @@
       "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz",
       "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==",
-      "dev": true,
       "license": "MIT",
       "engines": {
@@ -990,5 +1055,4 @@
       "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz",
       "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==",
-      "dev": true,
       "license": "MIT",
       "engines": {
@@ -1000,5 +1064,4 @@
       "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz",
       "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==",
-      "dev": true,
       "license": "MIT"
     },
@@ -1007,5 +1070,4 @@
       "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz",
       "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==",
-      "dev": true,
       "license": "MIT",
       "dependencies": {
@@ -1588,4 +1650,526 @@
       }
     },
+    "node_modules/@tailwindcss/postcss": {
+      "version": "4.1.11",
+      "resolved": "https://registry.npmjs.org/@tailwindcss/postcss/-/postcss-4.1.11.tgz",
+      "integrity": "sha512-q/EAIIpF6WpLhKEuQSEVMZNMIY8KhWoAemZ9eylNAih9jxMGAYPPWBn3I9QL/2jZ+e7OEz/tZkX5HwbBR4HohA==",
+      "license": "MIT",
+      "peer": true,
+      "dependencies": {
+        "@alloc/quick-lru": "^5.2.0",
+        "@tailwindcss/node": "4.1.11",
+        "@tailwindcss/oxide": "4.1.11",
+        "postcss": "^8.4.41",
+        "tailwindcss": "4.1.11"
+      }
+    },
+    "node_modules/@tailwindcss/postcss/node_modules/@tailwindcss/node": {
+      "version": "4.1.11",
+      "resolved": "https://registry.npmjs.org/@tailwindcss/node/-/node-4.1.11.tgz",
+      "integrity": "sha512-yzhzuGRmv5QyU9qLNg4GTlYI6STedBWRE7NjxP45CsFYYq9taI0zJXZBMqIC/c8fViNLhmrbpSFS57EoxUmD6Q==",
+      "license": "MIT",
+      "peer": true,
+      "dependencies": {
+        "@ampproject/remapping": "^2.3.0",
+        "enhanced-resolve": "^5.18.1",
+        "jiti": "^2.4.2",
+        "lightningcss": "1.30.1",
+        "magic-string": "^0.30.17",
+        "source-map-js": "^1.2.1",
+        "tailwindcss": "4.1.11"
+      }
+    },
+    "node_modules/@tailwindcss/postcss/node_modules/@tailwindcss/oxide": {
+      "version": "4.1.11",
+      "resolved": "https://registry.npmjs.org/@tailwindcss/oxide/-/oxide-4.1.11.tgz",
+      "integrity": "sha512-Q69XzrtAhuyfHo+5/HMgr1lAiPP/G40OMFAnws7xcFEYqcypZmdW8eGXaOUIeOl1dzPJBPENXgbjsOyhg2nkrg==",
+      "hasInstallScript": true,
+      "license": "MIT",
+      "peer": true,
+      "dependencies": {
+        "detect-libc": "^2.0.4",
+        "tar": "^7.4.3"
+      },
+      "engines": {
+        "node": ">= 10"
+      },
+      "optionalDependencies": {
+        "@tailwindcss/oxide-android-arm64": "4.1.11",
+        "@tailwindcss/oxide-darwin-arm64": "4.1.11",
+        "@tailwindcss/oxide-darwin-x64": "4.1.11",
+        "@tailwindcss/oxide-freebsd-x64": "4.1.11",
+        "@tailwindcss/oxide-linux-arm-gnueabihf": "4.1.11",
+        "@tailwindcss/oxide-linux-arm64-gnu": "4.1.11",
+        "@tailwindcss/oxide-linux-arm64-musl": "4.1.11",
+        "@tailwindcss/oxide-linux-x64-gnu": "4.1.11",
+        "@tailwindcss/oxide-linux-x64-musl": "4.1.11",
+        "@tailwindcss/oxide-wasm32-wasi": "4.1.11",
+        "@tailwindcss/oxide-win32-arm64-msvc": "4.1.11",
+        "@tailwindcss/oxide-win32-x64-msvc": "4.1.11"
+      }
+    },
+    "node_modules/@tailwindcss/postcss/node_modules/@tailwindcss/oxide-android-arm64": {
+      "version": "4.1.11",
+      "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-android-arm64/-/oxide-android-arm64-4.1.11.tgz",
+      "integrity": "sha512-3IfFuATVRUMZZprEIx9OGDjG3Ou3jG4xQzNTvjDoKmU9JdmoCohQJ83MYd0GPnQIu89YoJqvMM0G3uqLRFtetg==",
+      "cpu": [
+        "arm64"
+      ],
+      "license": "MIT",
+      "optional": true,
+      "os": [
+        "android"
+      ],
+      "peer": true,
+      "engines": {
+        "node": ">= 10"
+      }
+    },
+    "node_modules/@tailwindcss/postcss/node_modules/@tailwindcss/oxide-darwin-arm64": {
+      "version": "4.1.11",
+      "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-darwin-arm64/-/oxide-darwin-arm64-4.1.11.tgz",
+      "integrity": "sha512-ESgStEOEsyg8J5YcMb1xl8WFOXfeBmrhAwGsFxxB2CxY9evy63+AtpbDLAyRkJnxLy2WsD1qF13E97uQyP1lfQ==",
+      "cpu": [
+        "arm64"
+      ],
+      "license": "MIT",
+      "optional": true,
+      "os": [
+        "darwin"
+      ],
+      "peer": true,
+      "engines": {
+        "node": ">= 10"
+      }
+    },
+    "node_modules/@tailwindcss/postcss/node_modules/@tailwindcss/oxide-darwin-x64": {
+      "version": "4.1.11",
+      "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-darwin-x64/-/oxide-darwin-x64-4.1.11.tgz",
+      "integrity": "sha512-EgnK8kRchgmgzG6jE10UQNaH9Mwi2n+yw1jWmof9Vyg2lpKNX2ioe7CJdf9M5f8V9uaQxInenZkOxnTVL3fhAw==",
+      "cpu": [
+        "x64"
+      ],
+      "license": "MIT",
+      "optional": true,
+      "os": [
+        "darwin"
+      ],
+      "peer": true,
+      "engines": {
+        "node": ">= 10"
+      }
+    },
+    "node_modules/@tailwindcss/postcss/node_modules/@tailwindcss/oxide-freebsd-x64": {
+      "version": "4.1.11",
+      "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-freebsd-x64/-/oxide-freebsd-x64-4.1.11.tgz",
+      "integrity": "sha512-xdqKtbpHs7pQhIKmqVpxStnY1skuNh4CtbcyOHeX1YBE0hArj2romsFGb6yUmzkq/6M24nkxDqU8GYrKrz+UcA==",
+      "cpu": [
+        "x64"
+      ],
+      "license": "MIT",
+      "optional": true,
+      "os": [
+        "freebsd"
+      ],
+      "peer": true,
+      "engines": {
+        "node": ">= 10"
+      }
+    },
+    "node_modules/@tailwindcss/postcss/node_modules/@tailwindcss/oxide-linux-arm-gnueabihf": {
+      "version": "4.1.11",
+      "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm-gnueabihf/-/oxide-linux-arm-gnueabihf-4.1.11.tgz",
+      "integrity": "sha512-ryHQK2eyDYYMwB5wZL46uoxz2zzDZsFBwfjssgB7pzytAeCCa6glsiJGjhTEddq/4OsIjsLNMAiMlHNYnkEEeg==",
+      "cpu": [
+        "arm"
+      ],
+      "license": "MIT",
+      "optional": true,
+      "os": [
+        "linux"
+      ],
+      "peer": true,
+      "engines": {
+        "node": ">= 10"
+      }
+    },
+    "node_modules/@tailwindcss/postcss/node_modules/@tailwindcss/oxide-linux-arm64-gnu": {
+      "version": "4.1.11",
+      "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm64-gnu/-/oxide-linux-arm64-gnu-4.1.11.tgz",
+      "integrity": "sha512-mYwqheq4BXF83j/w75ewkPJmPZIqqP1nhoghS9D57CLjsh3Nfq0m4ftTotRYtGnZd3eCztgbSPJ9QhfC91gDZQ==",
+      "cpu": [
+        "arm64"
+      ],
+      "license": "MIT",
+      "optional": true,
+      "os": [
+        "linux"
+      ],
+      "peer": true,
+      "engines": {
+        "node": ">= 10"
+      }
+    },
+    "node_modules/@tailwindcss/postcss/node_modules/@tailwindcss/oxide-linux-arm64-musl": {
+      "version": "4.1.11",
+      "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm64-musl/-/oxide-linux-arm64-musl-4.1.11.tgz",
+      "integrity": "sha512-m/NVRFNGlEHJrNVk3O6I9ggVuNjXHIPoD6bqay/pubtYC9QIdAMpS+cswZQPBLvVvEF6GtSNONbDkZrjWZXYNQ==",
+      "cpu": [
+        "arm64"
+      ],
+      "license": "MIT",
+      "optional": true,
+      "os": [
+        "linux"
+      ],
+      "peer": true,
+      "engines": {
+        "node": ">= 10"
+      }
+    },
+    "node_modules/@tailwindcss/postcss/node_modules/@tailwindcss/oxide-linux-x64-gnu": {
+      "version": "4.1.11",
+      "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-gnu/-/oxide-linux-x64-gnu-4.1.11.tgz",
+      "integrity": "sha512-YW6sblI7xukSD2TdbbaeQVDysIm/UPJtObHJHKxDEcW2exAtY47j52f8jZXkqE1krdnkhCMGqP3dbniu1Te2Fg==",
+      "cpu": [
+        "x64"
+      ],
+      "license": "MIT",
+      "optional": true,
+      "os": [
+        "linux"
+      ],
+      "peer": true,
+      "engines": {
+        "node": ">= 10"
+      }
+    },
+    "node_modules/@tailwindcss/postcss/node_modules/@tailwindcss/oxide-linux-x64-musl": {
+      "version": "4.1.11",
+      "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-musl/-/oxide-linux-x64-musl-4.1.11.tgz",
+      "integrity": "sha512-e3C/RRhGunWYNC3aSF7exsQkdXzQ/M+aYuZHKnw4U7KQwTJotnWsGOIVih0s2qQzmEzOFIJ3+xt7iq67K/p56Q==",
+      "cpu": [
+        "x64"
+      ],
+      "license": "MIT",
+      "optional": true,
+      "os": [
+        "linux"
+      ],
+      "peer": true,
+      "engines": {
+        "node": ">= 10"
+      }
+    },
+    "node_modules/@tailwindcss/postcss/node_modules/@tailwindcss/oxide-wasm32-wasi": {
+      "version": "4.1.11",
+      "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-wasm32-wasi/-/oxide-wasm32-wasi-4.1.11.tgz",
+      "integrity": "sha512-Xo1+/GU0JEN/C/dvcammKHzeM6NqKovG+6921MR6oadee5XPBaKOumrJCXvopJ/Qb5TH7LX/UAywbqrP4lax0g==",
+      "bundleDependencies": [
+        "@napi-rs/wasm-runtime",
+        "@emnapi/core",
+        "@emnapi/runtime",
+        "@tybys/wasm-util",
+        "@emnapi/wasi-threads",
+        "tslib"
+      ],
+      "cpu": [
+        "wasm32"
+      ],
+      "license": "MIT",
+      "optional": true,
+      "peer": true,
+      "dependencies": {
+        "@emnapi/core": "^1.4.3",
+        "@emnapi/runtime": "^1.4.3",
+        "@emnapi/wasi-threads": "^1.0.2",
+        "@napi-rs/wasm-runtime": "^0.2.11",
+        "@tybys/wasm-util": "^0.9.0",
+        "tslib": "^2.8.0"
+      },
+      "engines": {
+        "node": ">=14.0.0"
+      }
+    },
+    "node_modules/@tailwindcss/postcss/node_modules/@tailwindcss/oxide-win32-arm64-msvc": {
+      "version": "4.1.11",
+      "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-win32-arm64-msvc/-/oxide-win32-arm64-msvc-4.1.11.tgz",
+      "integrity": "sha512-UgKYx5PwEKrac3GPNPf6HVMNhUIGuUh4wlDFR2jYYdkX6pL/rn73zTq/4pzUm8fOjAn5L8zDeHp9iXmUGOXZ+w==",
+      "cpu": [
+        "arm64"
+      ],
+      "license": "MIT",
+      "optional": true,
+      "os": [
+        "win32"
+      ],
+      "peer": true,
+      "engines": {
+        "node": ">= 10"
+      }
+    },
+    "node_modules/@tailwindcss/postcss/node_modules/@tailwindcss/oxide-win32-x64-msvc": {
+      "version": "4.1.11",
+      "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-win32-x64-msvc/-/oxide-win32-x64-msvc-4.1.11.tgz",
+      "integrity": "sha512-YfHoggn1j0LK7wR82TOucWc5LDCguHnoS879idHekmmiR7g9HUtMw9MI0NHatS28u/Xlkfi9w5RJWgz2Dl+5Qg==",
+      "cpu": [
+        "x64"
+      ],
+      "license": "MIT",
+      "optional": true,
+      "os": [
+        "win32"
+      ],
+      "peer": true,
+      "engines": {
+        "node": ">= 10"
+      }
+    },
+    "node_modules/@tailwindcss/postcss/node_modules/lightningcss": {
+      "version": "1.30.1",
+      "resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.30.1.tgz",
+      "integrity": "sha512-xi6IyHML+c9+Q3W0S4fCQJOym42pyurFiJUHEcEyHS0CeKzia4yZDEsLlqOFykxOdHpNy0NmvVO31vcSqAxJCg==",
+      "license": "MPL-2.0",
+      "peer": true,
+      "dependencies": {
+        "detect-libc": "^2.0.3"
+      },
+      "engines": {
+        "node": ">= 12.0.0"
+      },
+      "funding": {
+        "type": "opencollective",
+        "url": "https://opencollective.com/parcel"
+      },
+      "optionalDependencies": {
+        "lightningcss-darwin-arm64": "1.30.1",
+        "lightningcss-darwin-x64": "1.30.1",
+        "lightningcss-freebsd-x64": "1.30.1",
+        "lightningcss-linux-arm-gnueabihf": "1.30.1",
+        "lightningcss-linux-arm64-gnu": "1.30.1",
+        "lightningcss-linux-arm64-musl": "1.30.1",
+        "lightningcss-linux-x64-gnu": "1.30.1",
+        "lightningcss-linux-x64-musl": "1.30.1",
+        "lightningcss-win32-arm64-msvc": "1.30.1",
+        "lightningcss-win32-x64-msvc": "1.30.1"
+      }
+    },
+    "node_modules/@tailwindcss/postcss/node_modules/lightningcss-darwin-arm64": {
+      "version": "1.30.1",
+      "resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.30.1.tgz",
+      "integrity": "sha512-c8JK7hyE65X1MHMN+Viq9n11RRC7hgin3HhYKhrMyaXflk5GVplZ60IxyoVtzILeKr+xAJwg6zK6sjTBJ0FKYQ==",
+      "cpu": [
+        "arm64"
+      ],
+      "license": "MPL-2.0",
+      "optional": true,
+      "os": [
+        "darwin"
+      ],
+      "peer": true,
+      "engines": {
+        "node": ">= 12.0.0"
+      },
+      "funding": {
+        "type": "opencollective",
+        "url": "https://opencollective.com/parcel"
+      }
+    },
+    "node_modules/@tailwindcss/postcss/node_modules/lightningcss-darwin-x64": {
+      "version": "1.30.1",
+      "resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.30.1.tgz",
+      "integrity": "sha512-k1EvjakfumAQoTfcXUcHQZhSpLlkAuEkdMBsI/ivWw9hL+7FtilQc0Cy3hrx0AAQrVtQAbMI7YjCgYgvn37PzA==",
+      "cpu": [
+        "x64"
+      ],
+      "license": "MPL-2.0",
+      "optional": true,
+      "os": [
+        "darwin"
+      ],
+      "peer": true,
+      "engines": {
+        "node": ">= 12.0.0"
+      },
+      "funding": {
+        "type": "opencollective",
+        "url": "https://opencollective.com/parcel"
+      }
+    },
+    "node_modules/@tailwindcss/postcss/node_modules/lightningcss-freebsd-x64": {
+      "version": "1.30.1",
+      "resolved": "https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.30.1.tgz",
+      "integrity": "sha512-kmW6UGCGg2PcyUE59K5r0kWfKPAVy4SltVeut+umLCFoJ53RdCUWxcRDzO1eTaxf/7Q2H7LTquFHPL5R+Gjyig==",
+      "cpu": [
+        "x64"
+      ],
+      "license": "MPL-2.0",
+      "optional": true,
+      "os": [
+        "freebsd"
+      ],
+      "peer": true,
+      "engines": {
+        "node": ">= 12.0.0"
+      },
+      "funding": {
+        "type": "opencollective",
+        "url": "https://opencollective.com/parcel"
+      }
+    },
+    "node_modules/@tailwindcss/postcss/node_modules/lightningcss-linux-arm-gnueabihf": {
+      "version": "1.30.1",
+      "resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.30.1.tgz",
+      "integrity": "sha512-MjxUShl1v8pit+6D/zSPq9S9dQ2NPFSQwGvxBCYaBYLPlCWuPh9/t1MRS8iUaR8i+a6w7aps+B4N0S1TYP/R+Q==",
+      "cpu": [
+        "arm"
+      ],
+      "license": "MPL-2.0",
+      "optional": true,
+      "os": [
+        "linux"
+      ],
+      "peer": true,
+      "engines": {
+        "node": ">= 12.0.0"
+      },
+      "funding": {
+        "type": "opencollective",
+        "url": "https://opencollective.com/parcel"
+      }
+    },
+    "node_modules/@tailwindcss/postcss/node_modules/lightningcss-linux-arm64-gnu": {
+      "version": "1.30.1",
+      "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.30.1.tgz",
+      "integrity": "sha512-gB72maP8rmrKsnKYy8XUuXi/4OctJiuQjcuqWNlJQ6jZiWqtPvqFziskH3hnajfvKB27ynbVCucKSm2rkQp4Bw==",
+      "cpu": [
+        "arm64"
+      ],
+      "license": "MPL-2.0",
+      "optional": true,
+      "os": [
+        "linux"
+      ],
+      "peer": true,
+      "engines": {
+        "node": ">= 12.0.0"
+      },
+      "funding": {
+        "type": "opencollective",
+        "url": "https://opencollective.com/parcel"
+      }
+    },
+    "node_modules/@tailwindcss/postcss/node_modules/lightningcss-linux-arm64-musl": {
+      "version": "1.30.1",
+      "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.30.1.tgz",
+      "integrity": "sha512-jmUQVx4331m6LIX+0wUhBbmMX7TCfjF5FoOH6SD1CttzuYlGNVpA7QnrmLxrsub43ClTINfGSYyHe2HWeLl5CQ==",
+      "cpu": [
+        "arm64"
+      ],
+      "license": "MPL-2.0",
+      "optional": true,
+      "os": [
+        "linux"
+      ],
+      "peer": true,
+      "engines": {
+        "node": ">= 12.0.0"
+      },
+      "funding": {
+        "type": "opencollective",
+        "url": "https://opencollective.com/parcel"
+      }
+    },
+    "node_modules/@tailwindcss/postcss/node_modules/lightningcss-linux-x64-gnu": {
+      "version": "1.30.1",
+      "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.30.1.tgz",
+      "integrity": "sha512-piWx3z4wN8J8z3+O5kO74+yr6ze/dKmPnI7vLqfSqI8bccaTGY5xiSGVIJBDd5K5BHlvVLpUB3S2YCfelyJ1bw==",
+      "cpu": [
+        "x64"
+      ],
+      "license": "MPL-2.0",
+      "optional": true,
+      "os": [
+        "linux"
+      ],
+      "peer": true,
+      "engines": {
+        "node": ">= 12.0.0"
+      },
+      "funding": {
+        "type": "opencollective",
+        "url": "https://opencollective.com/parcel"
+      }
+    },
+    "node_modules/@tailwindcss/postcss/node_modules/lightningcss-linux-x64-musl": {
+      "version": "1.30.1",
+      "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.30.1.tgz",
+      "integrity": "sha512-rRomAK7eIkL+tHY0YPxbc5Dra2gXlI63HL+v1Pdi1a3sC+tJTcFrHX+E86sulgAXeI7rSzDYhPSeHHjqFhqfeQ==",
+      "cpu": [
+        "x64"
+      ],
+      "license": "MPL-2.0",
+      "optional": true,
+      "os": [
+        "linux"
+      ],
+      "peer": true,
+      "engines": {
+        "node": ">= 12.0.0"
+      },
+      "funding": {
+        "type": "opencollective",
+        "url": "https://opencollective.com/parcel"
+      }
+    },
+    "node_modules/@tailwindcss/postcss/node_modules/lightningcss-win32-arm64-msvc": {
+      "version": "1.30.1",
+      "resolved": "https://registry.npmjs.org/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.30.1.tgz",
+      "integrity": "sha512-mSL4rqPi4iXq5YVqzSsJgMVFENoa4nGTT/GjO2c0Yl9OuQfPsIfncvLrEW6RbbB24WtZ3xP/2CCmI3tNkNV4oA==",
+      "cpu": [
+        "arm64"
+      ],
+      "license": "MPL-2.0",
+      "optional": true,
+      "os": [
+        "win32"
+      ],
+      "peer": true,
+      "engines": {
+        "node": ">= 12.0.0"
+      },
+      "funding": {
+        "type": "opencollective",
+        "url": "https://opencollective.com/parcel"
+      }
+    },
+    "node_modules/@tailwindcss/postcss/node_modules/lightningcss-win32-x64-msvc": {
+      "version": "1.30.1",
+      "resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.30.1.tgz",
+      "integrity": "sha512-PVqXh48wh4T53F/1CCu8PIPCxLzWyCnn/9T5W1Jpmdy5h9Cwd+0YQS6/LwhHXSafuc61/xg9Lv5OrCby6a++jg==",
+      "cpu": [
+        "x64"
+      ],
+      "license": "MPL-2.0",
+      "optional": true,
+      "os": [
+        "win32"
+      ],
+      "peer": true,
+      "engines": {
+        "node": ">= 12.0.0"
+      },
+      "funding": {
+        "type": "opencollective",
+        "url": "https://opencollective.com/parcel"
+      }
+    },
+    "node_modules/@tailwindcss/postcss/node_modules/tailwindcss": {
+      "version": "4.1.11",
+      "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-4.1.11.tgz",
+      "integrity": "sha512-2E9TBm6MDD/xKYe+dvJZAmg3yxIEDNRc0jwlNyDg/4Fil2QcSLjFKGVff0lAf1jjeaArlG/M75Ey/EYr/OJtBA==",
+      "license": "MIT",
+      "peer": true
+    },
     "node_modules/@tailwindcss/vite": {
       "version": "4.1.4",
@@ -2076,5 +2660,4 @@
       "resolved": "https://registry.npmjs.org/daisyui/-/daisyui-5.0.27.tgz",
       "integrity": "sha512-XrpqgfpGaZJvTPg9pS9Rq6xbYpmMnR0a7AKqyVPZceJzjAs5HH3rfkRkiuGin0+KC2Adnu+WLHU7UDxAtCMyAw==",
-      "dev": true,
       "license": "MIT",
       "funding": {
@@ -2091,4 +2674,21 @@
       }
     },
+    "node_modules/date-fns": {
+      "version": "4.1.0",
+      "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-4.1.0.tgz",
+      "integrity": "sha512-Ukq0owbQXxa/U3EGtsdVBkR1w7KOQ5gIBqdH2hkvknzZPYvBxb/aa6E8L7tmjFtkwZBu3UXBbjIgPo/Ez4xaNg==",
+      "license": "MIT",
+      "funding": {
+        "type": "github",
+        "url": "https://github.com/sponsors/kossnocorp"
+      }
+    },
+    "node_modules/dayjs": {
+      "version": "1.11.13",
+      "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.13.tgz",
+      "integrity": "sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg==",
+      "license": "MIT",
+      "peer": true
+    },
     "node_modules/debug": {
       "version": "4.4.0",
@@ -2125,7 +2725,7 @@
     },
     "node_modules/detect-libc": {
-      "version": "2.0.3",
-      "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.3.tgz",
-      "integrity": "sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==",
+      "version": "2.0.4",
+      "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.4.tgz",
+      "integrity": "sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA==",
       "license": "Apache-2.0",
       "engines": {
@@ -3222,4 +3822,14 @@
       }
     },
+    "node_modules/magic-string": {
+      "version": "0.30.17",
+      "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.17.tgz",
+      "integrity": "sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==",
+      "license": "MIT",
+      "peer": true,
+      "dependencies": {
+        "@jridgewell/sourcemap-codec": "^1.5.0"
+      }
+    },
     "node_modules/math-intrinsics": {
       "version": "1.1.0",
@@ -3557,4 +4167,34 @@
       "engines": {
         "node": ">=0.10.0"
+      }
+    },
+    "node_modules/react-daisyui-timetools": {
+      "version": "2.0.2",
+      "resolved": "https://registry.npmjs.org/react-daisyui-timetools/-/react-daisyui-timetools-2.0.2.tgz",
+      "integrity": "sha512-ruNo9eUdNm/tlkgo+zd7qZbDgxTObRAH4CW8KBpxpWDTrS0krYuWcFcao9i4wwYeVfPnWrtgw5AsH895EmKgFA==",
+      "license": "MIT",
+      "peerDependencies": {
+        "@tailwindcss/postcss": "^4.0.12",
+        "daisyui": "^5",
+        "dayjs": "^1.11.13",
+        "postcss": "^8.5.3",
+        "react": "^19.0.0",
+        "react-dom": "^19.0.0",
+        "tailwindcss": "^4.0.12"
+      }
+    },
+    "node_modules/react-datepicker": {
+      "version": "8.4.0",
+      "resolved": "https://registry.npmjs.org/react-datepicker/-/react-datepicker-8.4.0.tgz",
+      "integrity": "sha512-6nPDnj8vektWCIOy9ArS3avus9Ndsyz5XgFCJ7nBxXASSpBdSL6lG9jzNNmViPOAOPh6T5oJyGaXuMirBLECag==",
+      "license": "MIT",
+      "dependencies": {
+        "@floating-ui/react": "^0.27.3",
+        "clsx": "^2.1.1",
+        "date-fns": "^4.1.0"
+      },
+      "peerDependencies": {
+        "react": "^16.9.0 || ^17 || ^18 || ^19 || ^19.0.0-rc",
+        "react-dom": "^16.9.0 || ^17 || ^18 || ^19 || ^19.0.0-rc"
       }
     },
@@ -3788,4 +4428,10 @@
         "node": ">=8"
       }
+    },
+    "node_modules/tabbable": {
+      "version": "6.2.0",
+      "resolved": "https://registry.npmjs.org/tabbable/-/tabbable-6.2.0.tgz",
+      "integrity": "sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==",
+      "license": "MIT"
     },
     "node_modules/tailwind-merge": {
Index: client/package.json
===================================================================
--- client/package.json	(revision ec388aa9564587cbd0aefb1f4fc1922f19afa485)
+++ client/package.json	(revision e08f729d597e558b87f81375e7240ecd63e86070)
@@ -20,4 +20,6 @@
     "lucide-react": "^0.503.0",
     "react": "^19.0.0",
+    "react-daisyui-timetools": "^2.0.2",
+    "react-datepicker": "^8.4.0",
     "react-dom": "^19.0.0",
     "react-router-dom": "^7.5.3",
Index: client/src/Dashboard/components/CreateNewChallenge.jsx
===================================================================
--- client/src/Dashboard/components/CreateNewChallenge.jsx	(revision ec388aa9564587cbd0aefb1f4fc1922f19afa485)
+++ client/src/Dashboard/components/CreateNewChallenge.jsx	(revision e08f729d597e558b87f81375e7240ecd63e86070)
@@ -2,4 +2,7 @@
 import { useNavigate } from "react-router-dom";
 import { createNewTask } from "@/services/taskService";
+import { DatePicker } from "react-daisyui-timetools";
+import "react-datepicker/dist/react-datepicker.css";
+import "cally";
 const CreateNewChallenge = () => {
   const navigate = useNavigate();
@@ -16,4 +19,5 @@
     difficulty: "Easy",
     output_type: "string",
+    solving_date: new Date(),
   });
 
@@ -195,5 +199,5 @@
           </div>
 
-          <div className="grid grid-cols-1 md:grid-cols-2 gap-4">
+          <div className="grid grid-cols-1 md:grid-cols-2 gap-4 mb-10">
             <div className="form-control">
               <span className="label-text font-medium">Difficulty</span>
@@ -226,4 +230,16 @@
                 <option value="object">Object</option>
               </select>
+            </div>
+          </div>
+          <div className="flex items-center gap-10 form-control">
+            <span className="label-text font-medium">Solving date</span>
+            <div data-theme="luxury " className="rounded-box w-1/5">
+              <DatePicker
+                value={formData.solving_date}
+                onChange={(date) =>
+                  setFormData((prev) => ({ ...prev, solving_date: date }))
+                }
+                minDate={new Date()}
+              />
             </div>
           </div>
Index: client/src/Dashboard/components/ManageChallenges.jsx
===================================================================
--- client/src/Dashboard/components/ManageChallenges.jsx	(revision ec388aa9564587cbd0aefb1f4fc1922f19afa485)
+++ client/src/Dashboard/components/ManageChallenges.jsx	(revision e08f729d597e558b87f81375e7240ecd63e86070)
@@ -1,6 +1,11 @@
-import React, { useEffect, useState } from "react";
-import { getAllTasks, deleteTask } from "@/services/taskService";
+import React, { useEffect, useRef, useState } from "react";
+import {
+  getAllTasks,
+  deleteTask,
+  searchTaskByDate,
+} from "@/services/taskService";
 import { useAuth } from "@/contexts/AuthContext";
-import { useNavigate } from "react-router-dom";
+import { useNavigate, useSearchParams } from "react-router-dom";
+
 import "cally";
 const PAGE_SIZE = 10;
@@ -14,4 +19,6 @@
   const navigate = useNavigate();
   const { user } = useAuth();
+  const calendarRef = useRef(null);
+  const [searchParams, setSearchParams] = useSearchParams();
   const [modal, setModal] = useState({
     isOpen: false,
@@ -21,19 +28,62 @@
   });
   useEffect(() => {
-    const fetchChallenges = async () => {
+    const fetchChallengesAndStyleCalendar = async () => {
       setLoading(true);
+      const dateParam = searchParams.get("date");
+
       try {
-        const data = await getAllTasks(currentPage, PAGE_SIZE);
-        setChallenges(data.challenges);
-        console.log("Fetched challenges:", data.challenges);
-        setTotalPages(data.totalPages);
+        if (dateParam) {
+          const data = await searchTaskByDate(dateParam);
+          setChallenges(data);
+          setTotalPages(1);
+          setCurrentPage(1);
+
+          if (calendarRef.current) {
+            calendarRef.current.value = dateParam;
+
+            calendarRef.current.style.setProperty(
+              "--cally-selected-background",
+              "white"
+            );
+            calendarRef.current.style.setProperty(
+              "--cally-selected-color",
+              "#1f2937"
+            );
+
+            calendarRef.current.style.setProperty(
+              "--cally-today-background",
+              "transparent"
+            );
+            calendarRef.current.style.setProperty(
+              "--cally-today-color",
+              "inherit"
+            );
+          }
+        } else {
+          const data = await getAllTasks(currentPage, PAGE_SIZE);
+          setChallenges(data.challenges);
+          setTotalPages(data.totalPages);
+
+          if (calendarRef.current) {
+            calendarRef.current.style.removeProperty(
+              "--cally-selected-background"
+            );
+            calendarRef.current.style.removeProperty("--cally-selected-color");
+            calendarRef.current.style.removeProperty(
+              "--cally-today-background"
+            );
+            calendarRef.current.style.removeProperty("--cally-today-color");
+          }
+        }
       } catch (err) {
         console.error("Failed to fetch challenges:", err);
+        setChallenges([]);
       } finally {
         setLoading(false);
       }
     };
-    fetchChallenges();
-  }, [currentPage]);
+
+    fetchChallengesAndStyleCalendar();
+  }, [currentPage, searchParams]);
   const fetchTestCases = async (challengeId) => {
     try {
@@ -46,4 +96,17 @@
         err
       );
+    }
+  };
+  const handleViewAll = async () => {
+    setLoading(true);
+    try {
+      const data = await getAllTasks(1, PAGE_SIZE);
+      setChallenges(data.challenges);
+      setTotalPages(data.totalPages);
+      setCurrentPage(1);
+    } catch (err) {
+      console.error("Failed to fetch all challenges:", err);
+    } finally {
+      setLoading(false);
     }
   };
@@ -82,4 +145,10 @@
   };
 
+  const searchByDate = (date) => {
+    if (date) {
+      setSearchParams({ date });
+    }
+  };
+
   return (
     <div className="p-6">
@@ -87,5 +156,5 @@
       <div className="flex flex-col md:flex-row gap-8 ml-8 mx-auto">
         {/* Left sidebar with calendar */}
-        <div className="w-full md:w-[300px] flex-shrink-0 ">
+        <div className="w-full md:w-[310px] flex-shrink-0 ">
           <div className="sticky top-6">
             <div className="card bg-base-200 shadow-md p-4">
@@ -93,5 +162,8 @@
 
               {/* Calendar component */}
-              <calendar-date class="cally bg-base-100 border border-base-300 shadow-md rounded-box w-full mb-4">
+              <calendar-date
+                ref={calendarRef}
+                class="cally bg-base-100 border border-base-300 shadow-md rounded-box w-full mb-4"
+              >
                 <svg
                   aria-label="Previous"
@@ -125,12 +197,14 @@
                 className="btn btn-block border-amber-400"
                 onClick={() => {
-                  // Get the selected date from the calendar component
+                  if (calendarRef.current) {
+                    const selectedDate = calendarRef.current.value;
+                    searchByDate(selectedDate);
+                  }
+
                   const calendarElement =
                     document.querySelector("calendar-date");
                   if (calendarElement) {
                     const selectedDate = calendarElement.value;
-                    console.log("Selected date:", selectedDate);
-                    // Implement your search logic here
-                    // fetchChallengesByDate(selectedDate);
+                    searchByDate(selectedDate);
                   }
                 }}
@@ -181,5 +255,5 @@
               <span className="loading loading-spinner loading-lg"></span>
             </div>
-          ) : (
+          ) : challenges.length > 0 ? (
             <div className="space-y-6">
               {challenges.map((challenge) => (
@@ -244,7 +318,8 @@
                       </button>
                     </div>
+
                     {expandedChallenge === challenge.id &&
                       challenge.test_cases && (
-                        <div className="mt-4 card bg-base-300 p-3">
+                        <div className="mt-4 card bg-base-300 p-4 ">
                           <h3 className="font-medium mb-2">Test Cases:</h3>
                           <div className="space-y-4 max-h-60 overflow-y-auto">
@@ -252,5 +327,5 @@
                               <div
                                 key={testCase.id}
-                                className="card bg-base-100 p-3"
+                                className="card bg-base-100 max-w-250 p-3"
                               >
                                 <h4 className="font-medium">
@@ -260,13 +335,17 @@
                                   <div className="pl-2 border-l-2 border-amber-400 mt-1">
                                     <p>Input:</p>
-                                    <pre className="bg-base-300 p-1 rounded">
-                                      {testCase.input || "N/A"}
-                                    </pre>
+                                    <div className="max-h-40 overflow-y-auto">
+                                      <pre className="bg-base-300 p-2 rounded whitespace-pre-wrap break-words w-full overflow-hidden">
+                                        {testCase.input || "N/A"}
+                                      </pre>
+                                    </div>
                                   </div>
                                   <div className="pl-2 border-l-2 border-green-400 mt-2">
                                     <p>Expected Output:</p>
-                                    <pre className="bg-base-300 p-1 rounded">
-                                      {testCase.output || "N/A"}
-                                    </pre>
+                                    <div className="max-h-40 overflow-y-auto">
+                                      <pre className="bg-base-300 p-2 rounded whitespace-pre-wrap break-words w-full overflow-hidden">
+                                        {testCase.output || "N/A"}
+                                      </pre>
+                                    </div>
                                   </div>
                                 </div>
@@ -279,21 +358,32 @@
                 </div>
               ))}
+              <button
+                className="block mx-auto  cursor-pointer hover:underline"
+                onClick={() => handleViewAll()}
+              >
+                View all challenges
+              </button>
+            </div>
+          ) : (
+            <div className="text-center text-base-content/60 py-16">
+              <p>No available challenges for the selected date.</p>
             </div>
           )}
-
-          <div className="flex justify-center gap-2 mt-8">
-            {Array.from({ length: totalPages }, (_, idx) => (
-              <button
-                key={idx + 1}
-                className={`btn btn-sm ${
-                  currentPage === idx + 1 ? "border-amber-400" : "btn-ghost"
-                }`}
-                onClick={() => setCurrentPage(idx + 1)}
-                disabled={loading}
-              >
-                {idx + 1}
-              </button>
-            ))}
-          </div>
+          {!loading && challenges.length > 1 && (
+            <div className="flex justify-center gap-2 mt-8">
+              {Array.from({ length: totalPages }, (_, idx) => (
+                <button
+                  key={idx + 1}
+                  className={`btn btn-sm ${
+                    currentPage === idx + 1 ? "border-amber-400" : "btn-ghost"
+                  }`}
+                  onClick={() => setCurrentPage(idx + 1)}
+                  disabled={loading}
+                >
+                  {idx + 1}
+                </button>
+              ))}
+            </div>
+          )}
         </div>
       </div>
@@ -302,5 +392,5 @@
       {modal.isOpen && (
         <div
-          className="fixed inset-0 z-50 flex items-center justify-center bg-black bg-opacity-50 backdrop-blur-xs"
+          className="fixed inset-0 z-50 flex items-center justify-center  bg-opacity-50 backdrop-blur-xs"
           aria-labelledby="modal-title"
           role="dialog"
Index: client/src/Dashboard/components/Navbar.jsx
===================================================================
--- client/src/Dashboard/components/Navbar.jsx	(revision ec388aa9564587cbd0aefb1f4fc1922f19afa485)
+++ client/src/Dashboard/components/Navbar.jsx	(revision e08f729d597e558b87f81375e7240ecd63e86070)
@@ -44,5 +44,5 @@
 
   return (
-    <nav className="dashboard__navbar w-80 min-h-screen bg-base-200 text-base-content">
+    <nav className="dashboard__navbar w-80 min-h-screen bg-base-200 text-base-content border-r border-base-content/10">
       <div className="p-4 border-b border-base-content/10">
         <a href="/" className="flex items-center gap-2">
@@ -52,5 +52,5 @@
       </div>
 
-      <div className="px-4 py-8">
+      <div className=" py-8">
         <ul className="menu menu-lg gap-2">
           <li>
@@ -123,6 +123,8 @@
             </button>
           </li>
-          {user && user.isModerator && (
-            <>
+        </ul>
+        {user && user.isModerator && (
+          <div className="border-t border-base-content/10 pt-2 w-full">
+            <ul className="menu menu-lg gap-2 ">
               <li>
                 <button
@@ -191,10 +193,10 @@
                 </button>
               </li>
-            </>
-          )}
-        </ul>
+            </ul>
+          </div>
+        )}
       </div>
 
-      <div className="absolute bottom-0 left-0 w-64 right-0 p-4 border-t border-base-content/10">
+      <div className="absolute bottom-0 w-80 left-0 right-0 p-4 border-t border-base-content/10">
         <button
           className={`flex items-center gap-3 px-4 py-3 rounded-lg transition-colors ${
Index: client/src/services/taskService.js
===================================================================
--- client/src/services/taskService.js	(revision ec388aa9564587cbd0aefb1f4fc1922f19afa485)
+++ client/src/services/taskService.js	(revision e08f729d597e558b87f81375e7240ecd63e86070)
@@ -28,4 +28,8 @@
 };
 
+export const searchTaskByDate = async (date) => {
+  return await apiClient.get(`/task/search?date=${date}`);
+};
+
 export const deleteTask = async (taskId) => {
   return await apiClient.delete(`/task/${taskId}`);
