Index: backend/challenges/initialChallenges.json
===================================================================
--- backend/challenges/initialChallenges.json	(revision 4fd4dc76c1275130d3e5ec521791ab392eaa0c1b)
+++ backend/challenges/initialChallenges.json	(revision d141d4710a08eddbfb0ea59f1b03d623466d8fd0)
@@ -868,4 +868,194 @@
     "difficulty": "Easy",
     "output_type": "string"
+  },
+  {
+    "title": "print-pyramid",
+    "description": "Write a program that prints a pyramid of stars (`*`) with a given height and orientation (`normal` or `reverse`). The pyramid should be centered, with each row having an odd number of stars, increasing by 2 for each subsequent row in a normal pyramid, or decreasing by 2 in a reverse pyramid. The input consists of two parameters: `height` (an integer) and `order` (a string, either 'normal' or 'reverse'). Each row should be separated by a newline (`\n`).",
+    "examples": [
+      {
+        "input": "3, normal",
+        "output": "  *\n ***\n*****"
+      },
+      {
+        "input": "3, reverse",
+        "output": "*****\n ***\n  *"
+      },
+      {
+        "input": "5, normal",
+        "output": "    *\n   ***\n  *****\n *******\n*********"
+      },
+      {
+        "input": "5, reverse",
+        "output": "*********\n *******\n  *****\n   ***\n    *"
+      }
+    ],
+    "testcases": [
+      {
+        "input": "7, normal",
+        "output": "      *\n     ***\n    *****\n   *******\n  *********\n ***********\n*************"
+      },
+      {
+        "input": "7, reverse",
+        "output": "*************\n ***********\n  *********\n   *******\n    *****\n     ***\n      *"
+      },
+      {
+        "input": "10, normal",
+        "output": "         *\n        ***\n       *****\n      *******\n     *********\n    ***********\n   *************\n  ***************\n *****************\n*******************"
+      },
+      {
+        "input": "10, reverse",
+        "output": "*******************\n *****************\n  ***************\n   *************\n    ***********\n     *********\n      *******\n       *****\n        ***\n         *"
+      },
+      {
+        "input": "8, normal",
+        "output": "       *\n      ***\n     *****\n    *******\n   *********\n  ***********\n *************\n***************"
+      },
+      {
+        "input": "8, reverse",
+        "output": "***************\n *************\n  ***********\n   *********\n    *******\n     *****\n      ***\n       *"
+      },
+      {
+        "input": "12, normal",
+        "output": "           *\n          ***\n         *****\n        *******\n       *********\n      ***********\n     *************\n    ***************\n   *****************\n  *******************\n *********************\n***********************"
+      },
+      {
+        "input": "12, reverse",
+        "output": "***********************\n *********************\n  *******************\n   *****************\n    ***************\n     *************\n      ***********\n       *********\n        *******\n         *****\n          ***\n           *"
+      },
+      {
+        "input": "15, normal",
+        "output": "              *\n             ***\n            *****\n           *******\n          *********\n         ***********\n        *************\n       ***************\n      *****************\n     *******************\n    *********************\n   ***********************\n  *************************\n ***************************\n*****************************"
+      },
+      {
+        "input": "15, reverse",
+        "output": "*****************************\n ***************************\n  *************************\n   ***********************\n    *********************\n     *******************\n      *****************\n       ***************\n        *************\n         ***********\n          *********\n           *******\n            *****\n             ***\n              *"
+      }
+    ],
+    "difficulty": "Easy",
+    "output_type": "string"
+  },
+  {
+    "title": "maximum-subarray-sum",
+    "description": "Given an array of `n` integers, find the contiguous subarray with the largest sum. The input consists of the number of integers `n` on the first line, followed by `n` integers separated by spaces on the next line. Return the maximum sum of any contiguous subarray. If all sums are negative, return the least negative sum.",
+    "examples": [
+      {
+        "input": "8\n-1 2 4 -3 5 2 -5 2",
+        "output": "10"
+      },
+      {
+        "input": "6\n-2 1 -3 4 -1 2",
+        "output": "6"
+      },
+      {
+        "input": "5\n-1 -2 -3 -4 -5",
+        "output": "-1"
+      }
+    ],
+    "testcases": [
+      {
+        "input": "10\n-2 3 -1 5 -3 2 -4 6 -2 1",
+        "output": "12"
+      },
+      {
+        "input": "15\n-1 2 -3 4 -5 6 -7 8 -9 10 -11 12 -13 14 -15",
+        "output": "25"
+      },
+      {
+        "input": "20\n1 -2 3 -4 5 -6 7 -8 9 -10 11 -12 13 -14 15 -16 17 -18 19 -20",
+        "output": "34"
+      },
+      {
+        "input": "12\n-5 -4 -3 -2 -1 0 1 2 3 4 5 6",
+        "output": "21"
+      },
+      {
+        "input": "18\n-10 -9 -8 -7 -6 -5 -4 -3 -2 -1 0 1 2 3 4 5 6 7",
+        "output": "28"
+      },
+      {
+        "input": "25\n-3 2 -4 5 -6 7 -8 9 -10 11 -12 13 -14 15 -16 17 -18 19 -20 21 -22 23 -24 25 -26",
+        "output": "49"
+      },
+      {
+        "input": "30\n1 -2 3 -4 5 -6 7 -8 9 -10 11 -12 13 -14 15 -16 17 -18 19 -20 21 -22 23 -24 25 -26 27 -28 29 -30",
+        "output": "64"
+      },
+      {
+        "input": "22\n-5 -4 -3 -2 -1 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16",
+        "output": "120"
+      },
+      {
+        "input": "28\n-10 -9 -8 -7 -6 -5 -4 -3 -2 -1 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17",
+        "output": "147"
+      },
+      {
+        "input": "35\n-5 4 -3 2 -1 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29",
+        "output": "385"
+      }
+    ],
+    "difficulty": "Medium",
+    "output_type": "integer"
+  },
+  {
+    "title": "reverse-polish-notation",
+    "description": "Create a calculator that evaluates expressions in Reverse Polish Notation (RPN), where operators follow their operands. The input is a single line of space-separated tokens (integers or operators). Supported operators are `+`, `-`, `*`, `/` (integer division, rounding down). Each operator has exactly two operands. Return the result of the expression as an integer. Assume all inputs are valid RPN expressions and division by zero does not occur.",
+    "examples": [
+      {
+        "input": "3 4 +",
+        "output": "7"
+      },
+      {
+        "input": "5 1 2 + 4 * + 3 -",
+        "output": "14"
+      },
+      {
+        "input": "10 5 /",
+        "output": "2"
+      }
+    ],
+    "testcases": [
+      {
+        "input": "100 50 25 5 * + 10 / - 3 2 * + 7 -",
+        "output": "168"
+      },
+      {
+        "input": "15 7 3 4 + * 8 2 / - 5 * 10 +",
+        "output": "260"
+      },
+      {
+        "input": "200 50 25 5 * + 10 / - 3 4 5 * + * 7 - 2 /",
+        "output": "1493"
+      },
+      {
+        "input": "30 20 10 5 * 2 / - 3 4 * + 5 2 * - *",
+        "output": "1020"
+      },
+      {
+        "input": "500 200 100 50 25 * + 5 / - 10 5 * 3 - + 2 /",
+        "output": "2231"
+      },
+      {
+        "input": "80 40 20 10 * 5 / - 3 2 1 + * + 7 4 * - 2 /",
+        "output": "301"
+      },
+      {
+        "input": "1000 500 250 125 * + 25 / - 15 10 5 * 2 / - * 3 +",
+        "output": "14853"
+      },
+      {
+        "input": "60 30 15 5 * 2 / - 10 5 3 * - * 4 2 * + 3 -",
+        "output": "597"
+      },
+      {
+        "input": "2000 1000 500 250 * + 50 / - 20 10 5 * 2 / - 3 * + 7 - 2 /",
+        "output": "2971"
+      },
+      {
+        "input": "150 75 25 5 * + 5 / - 10 5 3 * - 2 * + 4 2 1 + * - 8 /",
+        "output": "281"
+      }
+    ],
+    "difficulty": "Medium",
+    "output_type": "integer"
   }
 ]
Index: backend/scripts/addChallenge.js
===================================================================
--- backend/scripts/addChallenge.js	(revision 4fd4dc76c1275130d3e5ec521791ab392eaa0c1b)
+++ backend/scripts/addChallenge.js	(revision d141d4710a08eddbfb0ea59f1b03d623466d8fd0)
@@ -1,50 +1,50 @@
-// const supabase = require("../supabaseClient");
-// const prisma = require("../lib/prisma");
-// const fs = require("fs").promises;
-// const path = require("path");
-// const Challenge = require("../models/Challenge");
+const supabase = require('../supabaseClient');
+const prisma = require('../lib/prisma');
+const fs = require('fs').promises;
+const path = require('path');
+const Challenge = require('../models/Challenge');
 
-// async function addChallenge() {
-//   const jsonPath = path.join(__dirname, "../challenges/initialChallenges.json");
-//   const data = await fs.readFile(jsonPath, "utf8");
-//   const challengesData = JSON.parse(data);
+async function addChallenge() {
+  const jsonPath = path.join(__dirname, '../challenges/initialChallenges.json');
+  const data = await fs.readFile(jsonPath, 'utf8');
+  const challengesData = JSON.parse(data);
 
-//   const challenge = challengesData[challengesData.length - 3];
+  const challenge = challengesData[challengesData.length - 1];
 
-//   let currentDate = new Date();
-//   currentDate.setDate(currentDate.getDate());
-//   const newChallenge = new Challenge({
-//     title: challenge.title,
-//     content: challenge.description,
-//     solving_date: currentDate,
-//     attempted_by: 0,
-//     solved_by: 0,
-//     expired: false,
-//     examples: challenge.examples,
-//     test_cases: challenge.testcases.map((testCase) => ({
-//       input: testCase.input,
-//       output: testCase.output,
-//     })),
-//     output_type: challenge.output_type,
-//     difficulty: challenge.difficulty,
-//   });
-//   const createdChallenge = await prisma.challenges.create({
-//     data: {
-//       title: newChallenge.title,
-//       content: newChallenge.content,
-//       solving_date: newChallenge.solving_date,
-//       attempted_by: newChallenge.attempted_by,
-//       solved_by: newChallenge.solved_by,
-//       expired: newChallenge.expired,
-//       examples: newChallenge.examples,
-//       output_type: newChallenge.output_type,
-//       difficulty: newChallenge.difficulty,
+  let currentDate = new Date();
+  currentDate.setDate(currentDate.getDate() + 1);
+  const newChallenge = new Challenge({
+    title: challenge.title,
+    content: challenge.description,
+    solving_date: currentDate,
+    attempted_by: 0,
+    solved_by: 0,
+    expired: false,
+    examples: challenge.examples,
+    test_cases: challenge.testcases.map((testCase) => ({
+      input: testCase.input,
+      output: testCase.output,
+    })),
+    output_type: challenge.output_type,
+    difficulty: challenge.difficulty,
+  });
+  const createdChallenge = await prisma.challenges.create({
+    data: {
+      title: newChallenge.title,
+      content: newChallenge.content,
+      solving_date: newChallenge.solving_date,
+      attempted_by: newChallenge.attempted_by,
+      solved_by: newChallenge.solved_by,
+      expired: newChallenge.expired,
+      examples: newChallenge.examples,
+      output_type: newChallenge.output_type,
+      difficulty: newChallenge.difficulty,
 
-//       test_cases: {
-//         create: newChallenge.test_cases,
-//       },
-//     },
-//   });
-// }
+      test_cases: {
+        create: newChallenge.test_cases,
+      },
+    },
+  });
+}
 
-// addChallenge();
+addChallenge();
Index: client/src/Dashboard/components/ManagePosts.jsx
===================================================================
--- client/src/Dashboard/components/ManagePosts.jsx	(revision 4fd4dc76c1275130d3e5ec521791ab392eaa0c1b)
+++ client/src/Dashboard/components/ManagePosts.jsx	(revision d141d4710a08eddbfb0ea59f1b03d623466d8fd0)
@@ -1,15 +1,15 @@
-import React, { useState, useEffect, useCallback, useRef } from "react";
-import { useSearchParams } from "react-router-dom";
-import doneAll from "../../assets/images/done-all.svg";
-import trashIcon from "../../assets/images/delete.svg";
-import { useAuth } from "@/contexts/AuthContext";
+import React, { useState, useEffect, useCallback, useRef } from 'react';
+import { useSearchParams } from 'react-router-dom';
+import doneAll from '../../assets/images/done-all.svg';
+import trashIcon from '../../assets/images/delete.svg';
+import { useAuth } from '@/contexts/AuthContext';
 import {
   getReviewPosts,
   deleteReviewPost,
   approveReviewPost,
-} from "@/services/reviewService";
-import CalendarPopover from "./CalendarPopover";
-import "react-datepicker/dist/react-datepicker.css";
-import "cally";
+} from '@/services/reviewService';
+import CalendarPopover from './CalendarPopover';
+import 'react-datepicker/dist/react-datepicker.css';
+import 'cally';
 const ManagePosts = () => {
   const [posts, setPosts] = useState([]);
@@ -25,6 +25,6 @@
   const [modal, setModal] = useState({
     isOpen: false,
-    message: "",
-    type: "",
+    message: '',
+    type: '',
     postId: null,
     post: null,
@@ -34,8 +34,8 @@
   // Filter states
   const defaultFilters = {
-    topic: "all",
-    dateSort: "newest",
+    topic: 'all',
+    dateSort: 'oldest',
     selectedDate: null,
-    searchText: "",
+    searchText: '',
   };
 
@@ -60,5 +60,5 @@
       }
     }
-    newSearchParams.set("page", "1");
+    newSearchParams.set('page', '1');
     setPage(1);
     setSearchParams(newSearchParams);
@@ -72,5 +72,5 @@
       newSearchParams.delete(filterKey);
       setPage(1);
-      newSearchParams.set("page", "1");
+      newSearchParams.set('page', '1');
       setSearchParams(newSearchParams);
     }
@@ -79,5 +79,5 @@
     const freshDefaultFilters = { ...defaultFilters };
     setFilters(freshDefaultFilters);
-    setSearchParams({ page: "1" });
+    setSearchParams({ page: '1' });
     setPage(1);
   };
@@ -94,11 +94,11 @@
 
   const openViewPostModal = (post) => {
-    showModal("", "view-post", post.id, post);
+    showModal('', 'view-post', post.id, post);
   };
   const closeModal = () => {
     setModal({
       isOpen: false,
-      message: "",
-      type: "",
+      message: '',
+      type: '',
       postId: null,
       post: null,
@@ -108,7 +108,7 @@
   const confirmAction = async () => {
     setIsActionLoading(true);
-    if (modal.type === "delete" && modal.postId) {
+    if (modal.type === 'delete' && modal.postId) {
       await handleDeletePost(modal.postId);
-    } else if (modal.type === "approve" && modal.post) {
+    } else if (modal.type === 'approve' && modal.post) {
       await handleApprovePost(modal.post);
     }
@@ -124,12 +124,12 @@
 
       const filtersForApi = {
-        searchText: searchParams.get("searchText") || "",
-        topic: searchParams.get("topic") || "all",
-        selectedDate: searchParams.get("selectedDate") || null,
-        dateSort: searchParams.get("dateSort") || "newest",
+        searchText: searchParams.get('searchText') || '',
+        topic: searchParams.get('topic') || 'all',
+        selectedDate: searchParams.get('selectedDate') || null,
+        dateSort: searchParams.get('dateSort') || 'oldest',
       };
 
       try {
-        const currentPage = parseInt(searchParams.get("page") || "1", 10);
+        const currentPage = parseInt(searchParams.get('page') || '1', 10);
         setPage(currentPage);
 
@@ -144,10 +144,10 @@
         setTotalPages(data.totalPages);
       } catch (err) {
-        console.error("Error fetching review posts:", err);
+        console.error('Error fetching review posts:', err);
         setPosts([]);
         setTotalPages(0);
         setError(
           err.response?.data?.error ||
-            "Failed to fetch posts. You may not have permission."
+            'Failed to fetch posts. You may not have permission.'
         );
       } finally {
@@ -163,9 +163,9 @@
       await deleteReviewPost(postId, user.id);
       setPosts((prevPosts) => prevPosts.filter((p) => p.id !== postId));
-      showModal("Post deleted successfully.", "deleted");
+      showModal('Post deleted successfully.', 'deleted');
     } catch (err) {
-      console.error("Error deleting review post:", err);
+      console.error('Error deleting review post:', err);
       setError(
-        err.response?.data?.message || err.message || "Failed to delete post."
+        err.response?.data?.message || err.message || 'Failed to delete post.'
       );
     }
@@ -185,13 +185,13 @@
         prevPosts.filter((p) => p.id !== postToApprove.id)
       );
-      showModal("Post approved successfully.", "success");
+      showModal('Post approved successfully.', 'success');
     } catch (err) {
-      console.error("Error approving post:", err);
+      console.error('Error approving post:', err);
       setError(
-        err.response?.data?.message || err.message || "Failed to approve post."
+        err.response?.data?.message || err.message || 'Failed to approve post.'
       );
       showModal(
-        err.response?.data?.message || err.message || "Failed to approve post.",
-        "error"
+        err.response?.data?.message || err.message || 'Failed to approve post.',
+        'error'
       );
     }
@@ -199,15 +199,15 @@
 
   const openConfirmationModal = (type, item) => {
-    if (type === "delete") {
+    if (type === 'delete') {
       showModal(
         `Are you sure you want to delete post with title "${item.title}"? This action cannot be undone.`,
-        "delete",
+        'delete',
         item.id,
         item
       );
-    } else if (type === "approve") {
+    } else if (type === 'approve') {
       showModal(
         `Are you sure you want to approve post with title "${item.title}"? It will be published to the forum.`,
-        "approve",
+        'approve',
         item.id,
         item
@@ -218,9 +218,9 @@
   const isLoading = authLoading || isFetching;
   const formatFilterLabel = (value) => {
-    if (!value) return "";
+    if (!value) return '';
     return value
-      .split("-")
+      .split('-')
       .map((word) => word.charAt(0).toUpperCase() + word.slice(1))
-      .join(" ");
+      .join(' ');
   };
 
@@ -244,6 +244,6 @@
                     Filters
                     {/* Active filter count indicator */}
-                    {(filters.topic !== "all" ||
-                      filters.dateSort !== "newest" ||
+                    {(filters.topic !== 'all' ||
+                      filters.dateSort !== 'newest' ||
                       filters.selectedDate ||
                       (filters.searchText && filters.searchText.trim())) && (
@@ -251,8 +251,8 @@
                         {
                           [
-                            filters.topic !== "all",
-                            filters.dateSort !== "newest",
+                            filters.topic !== 'all',
+                            filters.dateSort !== 'newest',
                             filters.selectedDate,
-                            filters.commentSort !== "none",
+                            filters.commentSort !== 'none',
                             filters.searchText && filters.searchText.trim(),
                           ].filter(Boolean).length
@@ -267,5 +267,5 @@
                     <svg
                       className={`w-5 h-5 transition-transform duration-200 ${
-                        showFilters ? "rotate-180" : ""
+                        showFilters ? 'rotate-180' : ''
                       }`}
                       fill="none"
@@ -286,5 +286,5 @@
                 <div
                   className={`transition-all duration-300 ${
-                    showFilters ? "block opacity-100" : "hidden opacity-0"
+                    showFilters ? 'block opacity-100' : 'hidden opacity-0'
                   } lg:block lg:opacity-100`}
                 >
@@ -308,5 +308,5 @@
                           }
                           onKeyDown={(e) => {
-                            if (e.key === "Enter") {
+                            if (e.key === 'Enter') {
                               applyFilters();
                             }
@@ -367,6 +367,6 @@
                           className="select select-sm select-bordered w-full text-xs h-8 min-h-8"
                         >
+                          <option value="oldest">Oldest First</option>
                           <option value="newest">Most Recent</option>
-                          <option value="oldest">Oldest First</option>
                         </select>
                       </div>
@@ -390,10 +390,10 @@
                                 ? new Date(
                                     filters.selectedDate
-                                  ).toLocaleDateString("en-US", {
-                                    year: "numeric",
-                                    month: "short",
-                                    day: "numeric",
+                                  ).toLocaleDateString('en-US', {
+                                    year: 'numeric',
+                                    month: 'short',
+                                    day: 'numeric',
                                   })
-                                : "" // Use empty string so placeholder is visible
+                                : '' // Use empty string so placeholder is visible
                             }
                             placeholder="Select date"
@@ -436,6 +436,6 @@
                       </label>
                       <div className="flex gap-1.5">
-                        {(filters.topic !== "all" ||
-                          filters.dateSort !== "newest" ||
+                        {(filters.topic !== 'all' ||
+                          filters.dateSort !== 'newest' ||
                           filters.selectedDate ||
                           (filters.searchText &&
@@ -466,15 +466,15 @@
                   {/* Active Filters Display - Improved Mobile Layout */}
                   <div className="flex flex-wrap gap-1.5 sm:gap-2">
-                    {filters.topic !== "all" && (
+                    {filters.topic !== 'all' && (
                       <span className="badge badge-outline badge-sm flex items-center gap-1 px-2 py-1">
                         <span className="font-medium text-xs">
-                          {filters.topic === "general"
-                            ? "General"
-                            : "Daily Challenge"}
+                          {filters.topic === 'general'
+                            ? 'General'
+                            : 'Daily Challenge'}
                         </span>
                         <button
                           type="button"
                           className="ml-1 text-xs font-bold hover:text-error hover:cursor-pointer focus:outline-none"
-                          onClick={() => handleRemoveFilter("topic")}
+                          onClick={() => handleRemoveFilter('topic')}
                           aria-label="Remove topic filter"
                         >
@@ -491,5 +491,5 @@
                           type="button"
                           className="ml-1 text-xs font-bold hover:text-error hover:cursor-pointer focus:outline-none"
-                          onClick={() => handleRemoveFilter("searchText")}
+                          onClick={() => handleRemoveFilter('searchText')}
                           aria-label="Remove search filter"
                         >
@@ -498,15 +498,15 @@
                       </span>
                     )}
-                    {filters.dateSort !== "newest" && (
+                    {filters.dateSort !== 'oldest' && (
                       <span className="badge badge-outline badge-sm flex items-center gap-1 px-2 py-1">
                         <span className="font-medium text-xs">
-                          {filters.dateSort === "oldest"
-                            ? "Oldest First"
-                            : "Most Recent"}
+                          {filters.dateSort === 'newest'
+                            ? 'Most Recent'
+                            : 'Oldest First'}
                         </span>
                         <button
                           type="button"
                           className="ml-1 text-xs font-bold hover:text-error hover:cursor-pointer focus:outline-none"
-                          onClick={() => handleRemoveFilter("dateSort")}
+                          onClick={() => handleRemoveFilter('dateSort')}
                           aria-label="Remove sort filter"
                         >
@@ -519,9 +519,9 @@
                         <span className="font-medium text-xs">
                           {new Date(filters.selectedDate).toLocaleDateString(
-                            "en-US",
+                            'en-US',
                             {
-                              year: "numeric",
-                              month: "short",
-                              day: "numeric",
+                              year: 'numeric',
+                              month: 'short',
+                              day: 'numeric',
                             }
                           )}
@@ -530,5 +530,5 @@
                           type="button"
                           className="ml-1 text-xs font-bold hover:text-error hover:cursor-pointer focus:outline-none"
-                          onClick={() => handleRemoveFilter("selectedDate")}
+                          onClick={() => handleRemoveFilter('selectedDate')}
                           aria-label="Remove date filter"
                         >
@@ -576,11 +576,11 @@
             <p className="text-xs sm:text-sm text-base-content/40 mt-2">
               {activeFilters.searchText ||
-              activeFilters.topic !== "all" ||
+              activeFilters.topic !== 'all' ||
               activeFilters.selectedDate
-                ? "Try adjusting your filters to see more posts."
-                : "No posts are currently awaiting review."}
+                ? 'Try adjusting your filters to see more posts.'
+                : 'No posts are currently awaiting review.'}
             </p>
             {(activeFilters.searchText ||
-              activeFilters.topic !== "all" ||
+              activeFilters.topic !== 'all' ||
               activeFilters.selectedDate) && (
               <button
@@ -611,5 +611,5 @@
                     title="Approve Post"
                     className="btn btn-xs sm:btn-sm btn-success btn-circle"
-                    onClick={() => openConfirmationModal("approve", post)}
+                    onClick={() => openConfirmationModal('approve', post)}
                   >
                     <img
@@ -622,5 +622,5 @@
                     title="Discard Post"
                     className="btn btn-xs sm:btn-sm btn-error btn-circle"
-                    onClick={() => openConfirmationModal("delete", post)}
+                    onClick={() => openConfirmationModal('delete', post)}
                   >
                     <img
@@ -636,10 +636,10 @@
                   <span
                     className={`inline-block text-xs font-semibold px-1.5 py-0.5 rounded ${
-                      post.topic === "general"
-                        ? "bg-blue-100 text-blue-800"
-                        : "bg-green-100 text-green-800"
+                      post.topic === 'general'
+                        ? 'bg-blue-100 text-blue-800'
+                        : 'bg-green-100 text-green-800'
                     }`}
                   >
-                    {post.topic === "general" ? "General" : "Daily Challenge"}
+                    {post.topic === 'general' ? 'General' : 'Daily Challenge'}
                   </span>
                   {post.challengeTitle && (
@@ -654,8 +654,8 @@
                   <span className="mx-1">·</span>
                   <span className="italic">
-                    {new Date(post.created_at).toLocaleDateString("en-US", {
-                      year: "numeric",
-                      month: "short",
-                      day: "numeric",
+                    {new Date(post.created_at).toLocaleDateString('en-US', {
+                      year: 'numeric',
+                      month: 'short',
+                      day: 'numeric',
                     })}
                   </span>
@@ -663,5 +663,5 @@
                 <p className="text-sm sm:text-base text-base-content/90 whitespace-pre-line break-words">
                   {post.content && post.content.length > 60
-                    ? post.content.slice(0, 60) + "..."
+                    ? post.content.slice(0, 60) + '...'
                     : post.content}
                 </p>
@@ -677,5 +677,5 @@
               onClick={() => {
                 const newPage = page - 1;
-                searchParams.set("page", newPage.toString());
+                searchParams.set('page', newPage.toString());
                 setSearchParams(searchParams);
               }}
@@ -690,8 +690,8 @@
                 key={idx}
                 className={`btn btn-sm px-2 sm:px-3 ${
-                  page - 1 === idx ? "border-amber-400" : "btn-ghost"
+                  page - 1 === idx ? 'border-amber-400' : 'btn-ghost'
                 }`}
                 onClick={() => {
-                  searchParams.set("page", (idx + 1).toString());
+                  searchParams.set('page', (idx + 1).toString());
                   setSearchParams(searchParams);
                 }}
@@ -710,5 +710,5 @@
                 className="btn btn-sm border-amber-400 px-2 sm:px-3"
                 onClick={() => {
-                  searchParams.set("page", page.toString());
+                  searchParams.set('page', page.toString());
                   setSearchParams(searchParams);
                 }}
@@ -722,8 +722,8 @@
               <button
                 className={`btn btn-sm px-2 sm:px-3 ${
-                  page === totalPages ? "border-amber-400" : "btn-ghost"
+                  page === totalPages ? 'border-amber-400' : 'btn-ghost'
                 }`}
                 onClick={() => {
-                  searchParams.set("page", totalPages.toString());
+                  searchParams.set('page', totalPages.toString());
                   setSearchParams(searchParams);
                 }}
@@ -738,5 +738,5 @@
               onClick={() => {
                 const newPage = page + 1;
-                searchParams.set("page", newPage.toString());
+                searchParams.set('page', newPage.toString());
                 setSearchParams(searchParams);
               }}
@@ -760,5 +760,5 @@
           <div className="bg-base-200 rounded-lg shadow-xl p-4 sm:p-6  w-full max-w-xl sm:max-w-md mx-4">
             <div className="flex items-center gap-3 mb-4">
-              {(modal.type === "approve" || modal.type === "success") && (
+              {(modal.type === 'approve' || modal.type === 'success') && (
                 <div className="w-6 h-6 sm:w-8 sm:h-8 rounded-full bg-success flex items-center justify-center shrink-0 break-words">
                   <svg
@@ -777,7 +777,7 @@
                 </div>
               )}
-              {(modal.type === "delete" ||
-                modal.type === "deleted" ||
-                modal.type === "error") && (
+              {(modal.type === 'delete' ||
+                modal.type === 'deleted' ||
+                modal.type === 'error') && (
                 <div className="w-6 h-6 sm:w-8 sm:h-8 rounded-full bg-error flex items-center justify-center shrink-0">
                   <svg
@@ -797,12 +797,12 @@
               )}
               <h3 className="font-bold text-base sm:text-lg" id="modal-title">
-                {modal.type === "approve" && "Approve Post"}
-                {(modal.type === "deleted" || modal.type === "delete") &&
-                  "Discard Post"}
-                {(modal.type === "success" || modal.type === "error") &&
-                  "Approve Post"}
+                {modal.type === 'approve' && 'Approve Post'}
+                {(modal.type === 'deleted' || modal.type === 'delete') &&
+                  'Discard Post'}
+                {(modal.type === 'success' || modal.type === 'error') &&
+                  'Approve Post'}
               </h3>
             </div>
-            {modal.type === "view-post" && modal.post ? (
+            {modal.type === 'view-post' && modal.post ? (
               <div className="space-y-4 max-h-[70vh] overflow-y-auto pr-2">
                 <h3
@@ -817,9 +817,9 @@
                   <span className="italic">
                     {new Date(modal.post.created_at).toLocaleDateString(
-                      "en-US",
+                      'en-US',
                       {
-                        year: "numeric",
-                        month: "long",
-                        day: "numeric",
+                        year: 'numeric',
+                        month: 'long',
+                        day: 'numeric',
                       }
                     )}
@@ -836,5 +836,5 @@
             )}
             <div className="flex justify-end gap-2 sm:gap-3 mt-3 sm:mt-4">
-              {modal.type === "approve" || modal.type === "delete" ? (
+              {modal.type === 'approve' || modal.type === 'delete' ? (
                 <>
                   <button
@@ -847,5 +847,5 @@
                   <button
                     className={`btn btn-sm sm:btn-md ${
-                      modal.type === "approve" ? "btn-success" : "btn-error"
+                      modal.type === 'approve' ? 'btn-success' : 'btn-error'
                     }`}
                     onClick={confirmAction}
@@ -855,12 +855,12 @@
                       <>
                         <span className="loading loading-spinner loading-sm mr-2"></span>
-                        {modal.type === "approve"
-                          ? "Approving..."
-                          : "Discarding..."}
+                        {modal.type === 'approve'
+                          ? 'Approving...'
+                          : 'Discarding...'}
                       </>
-                    ) : modal.type === "approve" ? (
-                      "Approve"
+                    ) : modal.type === 'approve' ? (
+                      'Approve'
                     ) : (
-                      "Discard"
+                      'Discard'
                     )}
                   </button>
