Index: backend/server.js
===================================================================
--- backend/server.js	(revision 4d0820794bf81c0be7e1dd1a9a1fa0c5156df023)
+++ backend/server.js	(revision cdddb452dcea23dc778d472452e7d26d0a4aaf5c)
@@ -4,5 +4,5 @@
 const path = require('path');
 const apiRouter = require('./routers/apiRouter');
-const registerRouter = require('./routers/registerRouter');
+
 const forumRouter = require('./routers/forumRouter');
 
@@ -15,5 +15,5 @@
 );
 app.use('/api', apiRouter);
-app.use('/register', registerRouter);
+
 app.use('/forum', forumRouter);
 app.get('/', indexRouter);
Index: client/src/CreatePost/CreatePost.jsx
===================================================================
--- client/src/CreatePost/CreatePost.jsx	(revision 4d0820794bf81c0be7e1dd1a9a1fa0c5156df023)
+++ client/src/CreatePost/CreatePost.jsx	(revision cdddb452dcea23dc778d472452e7d26d0a4aaf5c)
@@ -1,31 +1,26 @@
-import React, { useState } from "react";
-import { useNavigate } from "react-router-dom";
+import React, { useState } from 'react';
+import { useNavigate } from 'react-router-dom';
 
 const CreatePost = ({ setActivePage }) => {
-  const [title, setTitle] = useState("");
-  const [content, setContent] = useState("");
+  const [title, setTitle] = useState('');
+  const [content, setContent] = useState('');
   const navigate = useNavigate();
-
-  const backToForum = () => {
-    setActivePage("forum");
-    navigate("/dashboard");
-  };
 
   const handleSubmit = async (e) => {
     e.preventDefault();
 
-    const user = JSON.parse(localStorage.getItem("user"));
+    const user = JSON.parse(localStorage.getItem('user'));
 
     if (!user || !user.id || !user.name) {
-      alert("You must be logged in to create a post.");
-      navigate("/login");
+      alert('You must be logged in to create a post.');
+      navigate('/login');
       return;
     }
 
     try {
-      const response = await fetch("/forum/posts", {
-        method: "POST",
+      const response = await fetch('/forum/posts', {
+        method: 'POST',
         headers: {
-          "Content-Type": "application/json",
+          'Content-Type': 'application/json',
         },
         body: JSON.stringify({
@@ -41,7 +36,7 @@
       }
 
-      navigate("/dashboard");
+      navigate('/dashboard/forum');
     } catch (error) {
-      console.error("Error creating post:", error);
+      console.error('Error creating post:', error);
       alert(`Failed to create post: ${error.message}`);
     }
@@ -55,5 +50,8 @@
             Create a Post
           </h2>
-          <button onClick={backToForum} className="btn btn-outline gap-2">
+          <button
+            onClick={() => navigate('/dashboard/forum')}
+            className="btn btn-outline gap-2"
+          >
             <svg
               xmlns="http://www.w3.org/2000/svg"
@@ -109,5 +107,5 @@
               <button
                 type="button"
-                onClick={backToForum}
+                onClick={() => navigate('/dashboard/forum')}
                 className="btn btn-ghost btn-lg"
               >
Index: client/src/Dashboard/components/Forum.jsx
===================================================================
--- client/src/Dashboard/components/Forum.jsx	(revision 4d0820794bf81c0be7e1dd1a9a1fa0c5156df023)
+++ client/src/Dashboard/components/Forum.jsx	(revision cdddb452dcea23dc778d472452e7d26d0a4aaf5c)
@@ -3,6 +3,6 @@
 import commentIcon from '../../assets/images/comment.svg';
 import trashIcon from '../../assets/images/delete.svg'; // Add this import
-
-const Forum = ({ setActivePage, onPostClick }) => {
+import Navbar from './Navbar';
+const Forum = () => {
   const navigate = useNavigate();
   const [posts, setPosts] = useState([]);
@@ -62,93 +62,106 @@
 
   return (
-    <div className="flex flex-col md:flex-row gap-6 p-6 h-full overflow-y-auto w-full">
-      {/* Forum Posts */}
-      <div className="flex-1 ml-8">
-        <h1 className="text-3xl font-bold mb-4">Forum Posts</h1>
-        <div className="space-y-4" w-300>
-          {posts.map((post) => (
-            <div
-              key={post.id}
-              className="p-4 border rounded-lg shadow-sm hover:shadow-md transition  relative"
-            >
-              {(post.authorName === user.name ||
-                post.authorName === user.username) && (
-                <button
-                  className=" absolute top-2 right-2 p-1.5 cursor-pointer rounded-full hover:bg-gray-600 transition-colors"
+    <div
+      data-theme="luxury"
+      className="dashboard h-screen flex bg-base-100 overflow-none"
+    >
+      <Navbar></Navbar>
+      <div className="flex flex-col md:flex-row gap-6 p-6 h-full overflow-y-auto w-full">
+        {/* Forum Posts */}
+        <div className="flex-1 ml-8">
+          <h1 className="text-3xl font-bold mb-4">Forum Posts</h1>
+          <div className="space-y-4" w-300>
+            {posts.map((post) => (
+              <div
+                key={post.id}
+                className="p-4 border rounded-lg shadow-sm hover:shadow-md transition  relative"
+              >
+                {(post.authorName === user.name ||
+                  post.authorName === user.username) && (
+                  <button
+                    className=" absolute top-2 right-2 p-1.5 cursor-pointer rounded-full hover:bg-gray-600 transition-colors"
+                    onClick={(e) => {
+                      e.stopPropagation();
+                      if (
+                        window.confirm(
+                          'Are you sure you want to delete this post?'
+                        )
+                      ) {
+                        handleDeletePost(post.id);
+                      }
+                    }}
+                  >
+                    <img src={trashIcon} alt="Delete" className="w-6 h-6" />
+                  </button>
+                )}
+
+                <div className="flex items-center gap-4 mt-2">
+                  <h2
+                    className="text-3xl font-semibold mb-2 cursor-pointer hover:underline"
+                    onClick={() => {
+                      console.log('Post clicked:', post);
+                      navigate(`/dashboard/forum-detail/${post.id}`, {
+                        state: { post },
+                      });
+                    }}
+                  >
+                    {post.title}
+                  </h2>
+                </div>
+
+                <p className="text-m text-gray-500">
+                  By {post.authorName},{' '}
+                  <span>{post.dateCreated.split('T')[0]}</span>
+                </p>
+                <p className="mt-2 text-gray-400 text-xl">
+                  {post.content && post.content.length > 300
+                    ? post.content.slice(0, 300) + '...'
+                    : post.content}
+                </p>
+                <div
+                  className="mt-4 flex justify-end"
                   onClick={(e) => {
-                    e.stopPropagation();
+                    // Prevent clicking the post if the delete button was clicked
                     if (
-                      window.confirm(
-                        'Are you sure you want to delete this post?'
-                      )
+                      e.target.closest('.delete-btn') ||
+                      e.target.classList.contains('delete-btn')
                     ) {
-                      handleDeletePost(post.id);
+                      e.stopPropagation();
+                      return;
                     }
+                    onPostClick && onPostClick(post);
                   }}
                 >
-                  <img src={trashIcon} alt="Delete" className="w-6 h-6" />
-                </button>
-              )}
+                  <p className="mr-4">{post.comment_count}</p>
+                  <img
+                    src={commentIcon}
+                    alt="Comment"
+                    className="w-6 h-6 cursor-pointer hover:opacity-80"
+                  />
+                </div>
+              </div>
+            ))}
+          </div>
+          {hasMore && (
+            <div className="flex justify-center mt-6">
+              <button onClick={handleLoadMore} className="btn btn-outline">
+                Load More
+              </button>
+            </div>
+          )}
+        </div>
 
-              <div className="flex items-center gap-4 mt-2">
-                <h2
-                  className="text-3xl font-semibold mb-2 cursor-pointer hover:underline"
-                  onClick={() => onPostClick(post)}
-                >
-                  {post.title}
-                </h2>
-              </div>
-
-              <p className="text-m text-gray-500">
-                By {post.authorName},{' '}
-                <span>{post.dateCreated.split('T')[0]}</span>
-              </p>
-              <p className="mt-2 text-gray-400 text-xl">
-                {post.content && post.content.length > 300
-                  ? post.content.slice(0, 300) + '...'
-                  : post.content}
-              </p>
-              <div
-                className="mt-4 flex justify-end"
-                onClick={(e) => {
-                  // Prevent clicking the post if the delete button was clicked
-                  if (
-                    e.target.closest('.delete-btn') ||
-                    e.target.classList.contains('delete-btn')
-                  ) {
-                    e.stopPropagation();
-                    return;
-                  }
-                  onPostClick && onPostClick(post);
-                }}
-              >
-                <p className="mr-4">{post.comment_count}</p>
-                <img
-                  src={commentIcon}
-                  alt="Comment"
-                  className="w-6 h-6 cursor-pointer hover:opacity-80"
-                />
-              </div>
-            </div>
-          ))}
-        </div>
-        {hasMore && (
-          <div className="flex justify-center mt-6">
-            <button onClick={handleLoadMore} className="btn btn-outline">
-              Load More
+        {/* Create a Post Button */}
+        <div className="w-full md:w-1/4">
+          <div className="flex flex-row justify-end p-6 rounded-lg shadow-md">
+            <button
+              onClick={() => {
+                navigate('/dashboard/create-post');
+              }}
+              className="cursor-pointer px-6 py-3 bg-yellow-500 text-black rounded hover:bg-yellow-600"
+            >
+              Create a Post
             </button>
           </div>
-        )}
-      </div>
-
-      {/* Create a Post Button */}
-      <div className="w-full md:w-1/4">
-        <div className="flex flex-row justify-end p-6 rounded-lg shadow-md">
-          <button
-            onClick={() => setActivePage('createPost')}
-            className="cursor-pointer px-6 py-3 bg-yellow-500 text-black rounded hover:bg-yellow-600"
-          >
-            Create a Post
-          </button>
         </div>
       </div>
Index: client/src/Dashboard/components/ForumPostDetail.jsx
===================================================================
--- client/src/Dashboard/components/ForumPostDetail.jsx	(revision 4d0820794bf81c0be7e1dd1a9a1fa0c5156df023)
+++ client/src/Dashboard/components/ForumPostDetail.jsx	(revision cdddb452dcea23dc778d472452e7d26d0a4aaf5c)
@@ -1,17 +1,25 @@
 import React, { useEffect, useState } from 'react';
 import trashIcon from '../../assets/images/delete.svg';
-const ForumPostDetail = ({ post, onBack }) => {
+import Navbar from './Navbar';
+import { useParams, useNavigate, useLocation } from 'react-router-dom';
+
+const ForumPostDetail = () => {
   const [comments, setComments] = useState([]);
   const [loading, setLoading] = useState(true);
   const [error, setError] = useState(null);
   const [commentText, setCommentText] = useState('');
+  const location = useLocation();
+  const statePost = useState(location.state?.post || {});
+  const post = statePost[0];
   const [posting, setPosting] = useState(false);
   const user = JSON.parse(localStorage.getItem('user'));
+  const navigate = useNavigate();
+  const { postId } = useParams();
 
   useEffect(() => {
-    if (!post) return;
+    if (!postId) return;
     setLoading(true);
     setError(null);
-    fetch(`/forum/comments?post_id=${post.id}`)
+    fetch(`/forum/comments?post_id=${postId}`)
       .then((res) => {
         if (!res.ok) throw new Error('Failed to fetch comments');
@@ -26,5 +34,5 @@
         setLoading(false);
       });
-  }, [post]);
+  }, [postId]);
   const handleDeleteComment = async (commentId) => {
     try {
@@ -59,5 +67,5 @@
         headers: { 'Content-Type': 'application/json' },
         body: JSON.stringify({
-          post_id: post.id,
+          post_id: postId,
           content: commentText,
           authorId: user.id,
@@ -81,111 +89,120 @@
   };
 
-  if (!post) return null;
+  if (!postId) return null;
 
   return (
-    <div className="flex flex-col items-center justify-center h-full overflow-y-auto bg-base-200 px-2 py-8">
-      <div className="w-full h-full max-w-2xl">
-        <button className="btn btn-ghost mb-4" onClick={onBack}>
-          ← Back to Forum
-        </button>
-        <div className="card bg-base-100 shadow-xl  p-6 mb-8">
-          <div className="flex flex-col md:flex-row md:items-center md:justify-between gap-4 mb-2">
-            <h2 className="card-title text-3xl break-words">{post.title}</h2>
-
-            <div className="flex items-center gap-2 mt-2 md:mt-0">
-              <span className="badge badge-tertiary text-xs">
-                By {post.authorName}
-              </span>
+    <div
+      data-theme="luxury"
+      className="dashboard h-screen flex bg-base-100 overflow-none"
+    >
+      <Navbar></Navbar>
+      <div className="flex flex-col w-full items-center justify-center h-full overflow-y-auto bg-base-200 px-2 py-8">
+        <div className="w-full h-full max-w-2xl">
+          <button
+            className="btn btn-ghost mb-4"
+            onClick={() => navigate('/dashboard/forum')}
+          >
+            ← Back to Forum
+          </button>
+          <div className="card bg-base-100 shadow-xl  p-6 mb-8">
+            <div className="flex flex-col md:flex-row md:items-center md:justify-between gap-4 mb-2">
+              <h2 className="card-title text-3xl break-words">{post.title}</h2>
+
+              <div className="flex items-center gap-2 mt-2 md:mt-0">
+                <span className="badge badge-tertiary text-xs">
+                  By {post.authorName}
+                </span>
+              </div>
+            </div>
+            <div className="text-base-content/80 text-lg mb-4 whitespace-pre-line break-words">
+              {post.content}
             </div>
           </div>
-          <div className="text-base-content/80 text-lg mb-4 whitespace-pre-line break-words">
-            {post.content}
-          </div>
-        </div>
-
-        <div className="card bg-base-100 shadow-lg p-6 mb-8">
-          <form className="mt-6" onSubmit={handleSubmit}>
-            <h3 className="text-2xl font-semibold mb-4">
-              Comments ({comments.length})
-            </h3>
-            <textarea
-              className="textarea textarea-bordered w-full min-h-[80px]"
-              placeholder="Write a comment..."
-              value={commentText}
-              onChange={(e) => setCommentText(e.target.value)}
-              disabled={posting}
-              maxLength={500}
-            />
-            <div className="flex justify-end mt-2">
-              <button
-                type="submit"
-                className="btn btn-tertiary"
-                disabled={posting || !commentText.trim()}
-              >
-                {posting ? 'Posting...' : 'Post Comment'}
-              </button>
-            </div>
-          </form>
-
-          <div className="mt-8">
-            <div className="h-64 overflow-y-auto pr-2 space-y-4 rounded-md">
-              {loading ? (
-                <div className="text-gray-400 p-3">Loading comments...</div>
-              ) : error ? (
-                <div className="text-red-500 p-3">{error}</div>
-              ) : comments.length > 0 ? (
-                (console.log(comments),
-                comments.map(
-                  (comment, idx) => (
-                    console.log(comment),
-                    (
-                      <div
-                        key={comment.id || idx}
-                        className="p-4 rounded-lg bg-base-200 border border-base-300"
-                      >
-                        <div className="flex relative items-center gap-2 mb-1">
-                          {comment.authorId === user.id && (
-                            <button
-                              className=" absolute top-2 right-2 p-1.5 cursor-pointer rounded-full hover:bg-gray-600 transition-colors"
-                              onClick={(e) => {
-                                e.stopPropagation();
-                                // Here you would add the delete confirmation and logic
-                                if (
-                                  window.confirm(
-                                    'Are you sure you want to delete this comment?'
-                                  )
-                                ) {
-                                  // Call your delete comment function here
-                                  console.log('Delete comment:', comment.id);
-                                }
-                                handleDeleteComment(comment.id);
-                              }}
-                            >
-                              <img
-                                src={trashIcon}
-                                alt="Delete"
-                                className="w-6 h-6"
-                              />
-                            </button>
-                          )}
-                          <span className="font-semibold text-base-content">
-                            {comment.authorName}
-                          </span>
-                          <span className="text-xs text-base-content/60">
-                            {comment.dateCreated
-                              ? new Date(comment.dateCreated).toLocaleString()
-                              : ''}
-                          </span>
+
+          <div className="card bg-base-100 shadow-lg p-6 mb-8">
+            <form className="mt-6" onSubmit={handleSubmit}>
+              <h3 className="text-2xl font-semibold mb-4">
+                Comments ({comments.length})
+              </h3>
+              <textarea
+                className="textarea textarea-bordered w-full min-h-[80px]"
+                placeholder="Write a comment..."
+                value={commentText}
+                onChange={(e) => setCommentText(e.target.value)}
+                disabled={posting}
+                maxLength={500}
+              />
+              <div className="flex justify-end mt-2">
+                <button
+                  type="submit"
+                  className="btn btn-tertiary"
+                  disabled={posting || !commentText.trim()}
+                >
+                  {posting ? 'Posting...' : 'Post Comment'}
+                </button>
+              </div>
+            </form>
+
+            <div className="mt-8">
+              <div className="h-64 overflow-y-auto pr-2 space-y-4 rounded-md">
+                {loading ? (
+                  <div className="text-gray-400 p-3">Loading comments...</div>
+                ) : error ? (
+                  <div className="text-red-500 p-3">{error}</div>
+                ) : comments.length > 0 ? (
+                  (console.log(comments),
+                  comments.map(
+                    (comment, idx) => (
+                      console.log(comment),
+                      (
+                        <div
+                          key={comment.id || idx}
+                          className="p-4 rounded-lg bg-base-200 border border-base-300"
+                        >
+                          <div className="flex relative items-center gap-2 mb-1">
+                            {comment.authorId === user.id && (
+                              <button
+                                className=" absolute top-2 right-2 p-1.5 cursor-pointer rounded-full hover:bg-gray-600 transition-colors"
+                                onClick={(e) => {
+                                  e.stopPropagation();
+                                  // Here you would add the delete confirmation and logic
+                                  if (
+                                    window.confirm(
+                                      'Are you sure you want to delete this comment?'
+                                    )
+                                  ) {
+                                    // Call your delete comment function here
+                                    console.log('Delete comment:', comment.id);
+                                  }
+                                  handleDeleteComment(comment.id);
+                                }}
+                              >
+                                <img
+                                  src={trashIcon}
+                                  alt="Delete"
+                                  className="w-6 h-6"
+                                />
+                              </button>
+                            )}
+                            <span className="font-semibold text-base-content">
+                              {comment.authorName}
+                            </span>
+                            <span className="text-xs text-base-content/60">
+                              {comment.dateCreated
+                                ? new Date(comment.dateCreated).toLocaleString()
+                                : ''}
+                            </span>
+                          </div>
+                          <div className="text-base-content/80 text-base break-words">
+                            {comment.content}
+                          </div>
                         </div>
-                        <div className="text-base-content/80 text-base break-words">
-                          {comment.content}
-                        </div>
-                      </div>
+                      )
                     )
-                  )
-                ))
-              ) : (
-                <div className="text-gray-400 p-3">No comments yet.</div>
-              )}
+                  ))
+                ) : (
+                  <div className="text-gray-400 p-3">No comments yet.</div>
+                )}
+              </div>
             </div>
           </div>
Index: client/src/Dashboard/components/Navbar.jsx
===================================================================
--- client/src/Dashboard/components/Navbar.jsx	(revision cdddb452dcea23dc778d472452e7d26d0a4aaf5c)
+++ client/src/Dashboard/components/Navbar.jsx	(revision cdddb452dcea23dc778d472452e7d26d0a4aaf5c)
@@ -0,0 +1,98 @@
+import React, { useState, useEffect } from 'react';
+import { useNavigate } from 'react-router-dom';
+import logoIcon from '../../assets/images/logoIcon.png';
+import logoText from '../../assets/images/logoText.png';
+import pp from '../../assets/images/pp.svg';
+
+export default function Navbar() {
+  const user = JSON.parse(localStorage.getItem('user'));
+  const navigate = useNavigate();
+  return (
+    <nav className="dashboard__navbar w-80 min-h-screen bg-base-200 text-base-content">
+      <div className="p-4 border-b border-base-content/10">
+        <a href="/" className="flex items-center gap-2">
+          <img src={logoIcon} alt="Logo" className="w-10 h-10" />
+          <img src={logoText} alt="Logo Text" className="w-32" />
+        </a>
+      </div>
+
+      <div className="px-4 py-8">
+        <ul className="menu menu-lg gap-2">
+          <li>
+            <button
+              className={`flex items-center gap-4 px-4 py-3 hover:bg-[#FFB800] hover:text-black rounded-lg transition-colors `}
+              onClick={() => navigate('/dashboard')}
+            >
+              <svg
+                xmlns="http://www.w3.org/2000/svg"
+                className="w-5 h-5"
+                viewBox="0 0 24 24"
+                fill="none"
+                stroke="currentColor"
+                strokeWidth="2"
+              >
+                <path d="M3 9l9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"></path>
+              </svg>
+              Task of the Day
+            </button>
+          </li>
+          <li>
+            <button
+              className={`flex items-center gap-4 px-4 py-3 hover:bg-[#FFB800] hover:text-black rounded-lg transition-colors`}
+              onClick={() => navigate('/dashboard/leaderboard')}
+            >
+              <svg
+                xmlns="http://www.w3.org/2000/svg"
+                className="w-5 h-5"
+                viewBox="0 0 24 24"
+                fill="none"
+                stroke="currentColor"
+                strokeWidth="2"
+              >
+                <path d="M18 20V10M12 20V4M6 20v-6"></path>
+              </svg>
+              Leaderboard
+            </button>
+          </li>
+          <li>
+            <button
+              className={`flex items-center gap-4 px-4 py-3 hover:bg-[#FFB800] hover:text-black rounded-lg transition-colors`}
+              onClick={() => navigate('/dashboard/forum')}
+            >
+              <svg
+                xmlns="http://www.w3.org/2000/svg"
+                className="w-5 h-5"
+                viewBox="0 0 24 24"
+                fill="none"
+                stroke="currentColor"
+                strokeWidth="2"
+              >
+                <path d="M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2"></path>
+                <circle cx="9" cy="7" r="4"></circle>
+                <path d="M23 21v-2a4 4 0 0 0-3-3.87"></path>
+                <path d="M16 3.13a4 4 0 0 1 0 7.75"></path>
+              </svg>
+              Forum
+            </button>
+          </li>
+        </ul>
+      </div>
+
+      <div className="absolute bottom-0 left-0 w-64 right-0 p-4 border-t border-base-content/10">
+        <button
+          className={`flex items-center gap-3  px-4 py-3 hover:bg-[#FFB800] hover:text-black rounded-lg transition-colors `}
+        >
+          <img
+            src={pp}
+            alt="Profile"
+            className="w-10 h-10 rounded-full border-2 border-base-content/10"
+          />
+          <div className="flex flex-col items-start">
+            <span className="font-medium text-left">{user.name}</span>
+            <span className="text-sm text-base-content/70">{user.rank}</span>
+          </div>
+        </button>
+      </div>
+    </nav>
+  );
+}
Index: client/src/Dashboard/components/Profile.jsx
===================================================================
--- client/src/Dashboard/components/Profile.jsx	(revision 4d0820794bf81c0be7e1dd1a9a1fa0c5156df023)
+++ client/src/Dashboard/components/Profile.jsx	(revision cdddb452dcea23dc778d472452e7d26d0a4aaf5c)
@@ -16,30 +16,36 @@
     <div
       data-theme="luxury"
-      className="flex flex-col items-center p-6 bg-base-200"
+      className="dashboard h-screen flex bg-base-100 overflow-none"
     >
-      <div className="card w-full max-w-md bg-base-100 shadow-xl">
-        <div className="card-body items-center text-center">
-          <div className="avatar">
-            <div className="w-24 rounded-full ring ring-primary ring-offset-base-100 ring-offset-2">
-              <img src={pp} alt="Profile" />
+      <Navbar></Navbar>
+      <div
+        data-theme="luxury"
+        className="flex flex-col items-center p-6 bg-base-200"
+      >
+        <div className="card w-full max-w-md bg-base-100 shadow-xl">
+          <div className="card-body items-center text-center">
+            <div className="avatar">
+              <div className="w-24 rounded-full ring ring-primary ring-offset-base-100 ring-offset-2">
+                <img src={pp} alt="Profile" />
+              </div>
             </div>
-          </div>
-          <h2 className="card-title mt-4">{user.name}</h2>
-          <p className="text-gray-500">{user.email}</p>
-          <div className="mt-4">
-            <p className="text-lg">
-              <span className="font-bold">Rank:</span> {user.rank}
-            </p>
-            <p className="text-lg">
-              <span className="font-bold">Points:</span> {user.points}
-            </p>
-          </div>
-          <div className="mt-6">
-            <a onClick={handleSignOut} className="btn btn-action btn-sm mx-2">
-              Sign Out
-            </a>
-            <a href="/register" className="btn btn-action btn-sm mx-2">
-              Create New Account
-            </a>
+            <h2 className="card-title mt-4">{user.name}</h2>
+            <p className="text-gray-500">{user.email}</p>
+            <div className="mt-4">
+              <p className="text-lg">
+                <span className="font-bold">Rank:</span> {user.rank}
+              </p>
+              <p className="text-lg">
+                <span className="font-bold">Points:</span> {user.points}
+              </p>
+            </div>
+            <div className="mt-6">
+              <a onClick={handleSignOut} className="btn btn-action btn-sm mx-2">
+                Sign Out
+              </a>
+              <a href="/register" className="btn btn-action btn-sm mx-2">
+                Create New Account
+              </a>
+            </div>
           </div>
         </div>
Index: client/src/Dashboard/components/Task.jsx
===================================================================
--- client/src/Dashboard/components/Task.jsx	(revision 4d0820794bf81c0be7e1dd1a9a1fa0c5156df023)
+++ client/src/Dashboard/components/Task.jsx	(revision cdddb452dcea23dc778d472452e7d26d0a4aaf5c)
@@ -1,3 +1,4 @@
-import React, { useState } from "react";
+import React, { useState } from 'react';
+import Navbar from './Navbar';
 
 const Task = () => {
@@ -10,81 +11,17 @@
 
   return (
-    <div className="container mx-auto max-w-4xl p-6" data-theme="luxury">
-      {!showTask ? (
-        <div className="card bg-base-200 shadow-xl">
-          <div className="card-body items-center text-center">
-            <div className="flex items-center justify-center w-16 h-16 rounded-full bg-primary/10">
-              <svg
-                xmlns="http://www.w3.org/2000/svg"
-                className="w-8 h-8 text-primary"
-                viewBox="0 0 24 24"
-                fill="none"
-                stroke="currentColor"
-                strokeWidth="2"
-              >
-                <path d="M12 2L2 7l10 5 10-5-10-5zM2 17l10 5 10-5M2 12l10 5 10-5" />
-              </svg>
-            </div>
-            <h1 className="card-title text-4xl font-bold mb-6">
-              Task for {today}
-            </h1>
-            <div className="divider"></div>
-            <div className="space-y-6 text-lg">
-              <div className="card bg-base-300 shadow-sm">
-                <div className="card-body">
-                  <h2 className="card-title">Rules for Grading</h2>
-                  <ul className="list-disc list-inside space-y-2">
-                    <li>Earlier submissions receive better scores</li>
-                    <li>Multiple attempts will reduce your score</li>
-                    <li>Stay respectful and focused</li>
-                    <li>Have fun solving the problem!</li>
-                  </ul>
-                </div>
-              </div>
-              <div className="alert">
+    <div
+      data-theme="luxury"
+      className="dashboard h-screen flex bg-base-100 overflow-none"
+    >
+      <Navbar></Navbar>
+      <div className="container mx-auto max-w-4xl p-6" data-theme="luxury">
+        {!showTask ? (
+          <div className="card bg-base-200 shadow-xl">
+            <div className="card-body items-center text-center">
+              <div className="flex items-center justify-center w-16 h-16 rounded-full bg-primary/10">
                 <svg
                   xmlns="http://www.w3.org/2000/svg"
-                  fill="none"
-                  viewBox="0 0 24 24"
-                  className="w-6 h-6 stroke-current"
-                >
-                  <path
-                    strokeLinecap="round"
-                    strokeLinejoin="round"
-                    strokeWidth="2"
-                    d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"
-                  ></path>
-                </svg>
-                <span>The task will be available for 24 hours</span>
-              </div>
-            </div>
-            <div className="card-actions justify-center mt-8">
-              <button
-                onClick={handleStart}
-                className="btn btn-lg border-amber-400 gap-2"
-              >
-                <svg
-                  xmlns="http://www.w3.org/2000/svg"
-                  className="w-6 h-6"
-                  viewBox="0 0 24 24"
-                  fill="none"
-                  stroke="currentColor"
-                  strokeWidth="2"
-                >
-                  <path d="M5 3l14 9-14 9V3z" />
-                </svg>
-                Start Challenge
-              </button>
-            </div>
-          </div>
-        </div>
-      ) : (
-        <div className="card bg-base-200 shadow-xl">
-          <div className="card-body">
-            <div className="flex items-center gap-4 mb-8">
-              <div className="w-12 h-12 rounded-full bg-primary/10 flex items-center justify-center">
-                <svg
-                  xmlns="http://www.w3.org/2000/svg"
-                  className="w-6 h-6 text-primary"
+                  className="w-8 h-8 text-primary"
                   viewBox="0 0 24 24"
                   fill="none"
@@ -95,27 +32,111 @@
                 </svg>
               </div>
-              <h1 className="card-title text-3xl">Challenge for {today}</h1>
-            </div>
-
-            <div className="card bg-base-300 mb-8">
-              <div className="card-body">
-                <h2 className="card-title mb-4">Problem: String Reversal</h2>
-                <p className="text-lg leading-relaxed">
-                  Write a function that takes a string as input and returns its
-                  reverse. You must implement this manually without using
-                  built-in reverse functions or shortcuts like Python's [::-1]
-                  slicing.
-                </p>
+              <h1 className="card-title text-4xl font-bold mb-6">
+                Task for {today}
+              </h1>
+              <div className="divider"></div>
+              <div className="space-y-6 text-lg">
+                <div className="card bg-base-300 shadow-sm">
+                  <div className="card-body">
+                    <h2 className="card-title">Rules for Grading</h2>
+                    <ul className="list-disc list-inside space-y-2">
+                      <li>Earlier submissions receive better scores</li>
+                      <li>Multiple attempts will reduce your score</li>
+                      <li>Stay respectful and focused</li>
+                      <li>Have fun solving the problem!</li>
+                    </ul>
+                  </div>
+                </div>
+                <div className="alert">
+                  <svg
+                    xmlns="http://www.w3.org/2000/svg"
+                    fill="none"
+                    viewBox="0 0 24 24"
+                    className="w-6 h-6 stroke-current"
+                  >
+                    <path
+                      strokeLinecap="round"
+                      strokeLinejoin="round"
+                      strokeWidth="2"
+                      d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"
+                    ></path>
+                  </svg>
+                  <span>The task will be available for 24 hours</span>
+                </div>
+              </div>
+              <div className="card-actions justify-center mt-8">
+                <button
+                  onClick={handleStart}
+                  className="btn btn-lg border-amber-400 gap-2"
+                >
+                  <svg
+                    xmlns="http://www.w3.org/2000/svg"
+                    className="w-6 h-6"
+                    viewBox="0 0 24 24"
+                    fill="none"
+                    stroke="currentColor"
+                    strokeWidth="2"
+                  >
+                    <path d="M5 3l14 9-14 9V3z" />
+                  </svg>
+                  Start Challenge
+                </button>
               </div>
             </div>
+          </div>
+        ) : (
+          <div className="card bg-base-200 shadow-xl">
+            <div className="card-body">
+              <div className="flex items-center gap-4 mb-8">
+                <div className="w-12 h-12 rounded-full bg-primary/10 flex items-center justify-center">
+                  <svg
+                    xmlns="http://www.w3.org/2000/svg"
+                    className="w-6 h-6 text-primary"
+                    viewBox="0 0 24 24"
+                    fill="none"
+                    stroke="currentColor"
+                    strokeWidth="2"
+                  >
+                    <path d="M12 2L2 7l10 5 10-5-10-5zM2 17l10 5 10-5M2 12l10 5 10-5" />
+                  </svg>
+                </div>
+                <h1 className="card-title text-3xl">Challenge for {today}</h1>
+              </div>
 
-            <div className="grid grid-cols-1 md:grid-cols-2 gap-6 mb-8">
-              <div className="card bg-primary/5">
+              <div className="card bg-base-300 mb-8">
                 <div className="card-body">
-                  <h3 className="card-title text-primary">Your Input</h3>
-                  <div className="text-2xl font-mono mt-2">"ANDREJ"</div>
-                  <p className="text-sm mt-2 text-base-content/70">
-                    Use this input in your local editor
+                  <h2 className="card-title mb-4">Problem: String Reversal</h2>
+                  <p className="text-lg leading-relaxed">
+                    Write a function that takes a string as input and returns
+                    its reverse. You must implement this manually without using
+                    built-in reverse functions or shortcuts like Python's [::-1]
+                    slicing.
                   </p>
+                </div>
+              </div>
+
+              <div className="grid grid-cols-1 md:grid-cols-2 gap-6 mb-8">
+                <div className="card bg-primary/5">
+                  <div className="card-body">
+                    <h3 className="card-title text-primary">Your Input</h3>
+                    <div className="text-2xl font-mono mt-2">"ANDREJ"</div>
+                    <p className="text-sm mt-2 text-base-content/70">
+                      Use this input in your local editor
+                    </p>
+                  </div>
+                </div>
+
+                <div className="card bg-base-300">
+                  <div className="card-body">
+                    <h3 className="card-title">Example</h3>
+                    <div className="space-y-2 mt-2">
+                      <p className="font-mono">
+                        Input: "hello" → Output: "olleh"
+                      </p>
+                      <p className="font-mono">
+                        Input: "world" → Output: "dlrow"
+                      </p>
+                    </div>
+                  </div>
                 </div>
               </div>
@@ -123,35 +144,21 @@
               <div className="card bg-base-300">
                 <div className="card-body">
-                  <h3 className="card-title">Example</h3>
-                  <div className="space-y-2 mt-2">
-                    <p className="font-mono">
-                      Input: "hello" → Output: "olleh"
-                    </p>
-                    <p className="font-mono">
-                      Input: "world" → Output: "dlrow"
-                    </p>
+                  <h3 className="card-title mb-4">Submit Your Solution</h3>
+                  <input
+                    type="text"
+                    placeholder="Enter your output here"
+                    className="input input-bordered input-lg w-full mb-4"
+                  />
+                  <div className="card-actions justify-end">
+                    <button className="btn border-amber-400 btn-lg">
+                      Submit Solution
+                    </button>
                   </div>
                 </div>
               </div>
             </div>
-
-            <div className="card bg-base-300">
-              <div className="card-body">
-                <h3 className="card-title mb-4">Submit Your Solution</h3>
-                <input
-                  type="text"
-                  placeholder="Enter your output here"
-                  className="input input-bordered input-lg w-full mb-4"
-                />
-                <div className="card-actions justify-end">
-                  <button className="btn border-amber-400 btn-lg">
-                    Submit Solution
-                  </button>
-                </div>
-              </div>
-            </div>
           </div>
-        </div>
-      )}
+        )}
+      </div>
     </div>
   );
Index: client/src/LandingPage/components/LeaderBoardEx.jsx
===================================================================
--- client/src/LandingPage/components/LeaderBoardEx.jsx	(revision 4d0820794bf81c0be7e1dd1a9a1fa0c5156df023)
+++ client/src/LandingPage/components/LeaderBoardEx.jsx	(revision cdddb452dcea23dc778d472452e7d26d0a4aaf5c)
@@ -1,80 +1,87 @@
-import React from "react";
+import Navbar from '@/Dashboard/components/Navbar';
+import React from 'react';
 
 const LeaderBoardEx = () => {
   return (
-    <div className="flex flex-col justify-center items-center p-20 gap-10">
-      <h1 className="text-4xl font-bold">Leaderboard</h1>
-      <div className="overflow-x-auto rounded-box border border-base-content/5 bg-base-100 w-1/2">
-        <table className="table">
-          {/* head */}
-          <thead>
-            <tr>
-              <th></th>
-              <th>Name</th>
-              <th>Rank</th>
-              <th>Points</th>
-            </tr>
-          </thead>
-          <tbody>
-            {/* row 1 */}
-            <tr>
-              <th>1</th>
-              <td>John Smith</td>
-              <td>Diamond</td>
-              <td>2500</td>
-            </tr>
-            {/* row 2 */}
-            <tr>
-              <th>2</th>
-              <td>Sarah Johnson</td>
-              <td>Platinum</td>
-              <td>2300</td>
-            </tr>
-            {/* row 3 */}
-            <tr>
-              <th>3</th>
-              <td>Michael Brown</td>
-              <td>Gold</td>
-              <td>2100</td>
-            </tr>
-            {/* row 4 */}
-            <tr>
-              <th>4</th>
-              <td>Emily Davis</td>
-              <td>Silver</td>
-              <td>1900</td>
-            </tr>
-            {/* row 5 */}
-            <tr>
-              <th>5</th>
-              <td>David Wilson</td>
-              <td>Bronze</td>
-              <td>1700</td>
-            </tr>
-            {/* row 6 */}
-            <tr>
-              <th>6</th>
-              <td>Lisa Anderson</td>
-              <td>Bronze</td>
-              <td>1500</td>
-            </tr>
-            {/* row 7 */}
-            <tr>
-              <th>7</th>
-              <td>Robert Taylor</td>
-              <td>Bronze</td>
-              <td>1300</td>
-            </tr>
-            {/* row 8 */}
-            <tr>
-              <th>8</th>
-              <td>Jennifer Martinez</td>
-              <td>Bronze</td>
-              <td>1100</td>
-            </tr>
-          </tbody>
-        </table>
+    <div
+      data-theme="luxury"
+      className="dashboard h-screen flex bg-base-100 overflow-none"
+    >
+      <Navbar></Navbar>
+      <div className="flex w-full flex-col justify-center items-center p-20 gap-10">
+        <h1 className="text-4xl font-bold">Leaderboard</h1>
+        <div className="overflow-x-auto rounded-box border border-base-content/5 bg-base-100 w-1/2">
+          <table className="table">
+            {/* head */}
+            <thead>
+              <tr>
+                <th></th>
+                <th>Name</th>
+                <th>Rank</th>
+                <th>Points</th>
+              </tr>
+            </thead>
+            <tbody>
+              {/* row 1 */}
+              <tr>
+                <th>1</th>
+                <td>John Smith</td>
+                <td>Diamond</td>
+                <td>2500</td>
+              </tr>
+              {/* row 2 */}
+              <tr>
+                <th>2</th>
+                <td>Sarah Johnson</td>
+                <td>Platinum</td>
+                <td>2300</td>
+              </tr>
+              {/* row 3 */}
+              <tr>
+                <th>3</th>
+                <td>Michael Brown</td>
+                <td>Gold</td>
+                <td>2100</td>
+              </tr>
+              {/* row 4 */}
+              <tr>
+                <th>4</th>
+                <td>Emily Davis</td>
+                <td>Silver</td>
+                <td>1900</td>
+              </tr>
+              {/* row 5 */}
+              <tr>
+                <th>5</th>
+                <td>David Wilson</td>
+                <td>Bronze</td>
+                <td>1700</td>
+              </tr>
+              {/* row 6 */}
+              <tr>
+                <th>6</th>
+                <td>Lisa Anderson</td>
+                <td>Bronze</td>
+                <td>1500</td>
+              </tr>
+              {/* row 7 */}
+              <tr>
+                <th>7</th>
+                <td>Robert Taylor</td>
+                <td>Bronze</td>
+                <td>1300</td>
+              </tr>
+              {/* row 8 */}
+              <tr>
+                <th>8</th>
+                <td>Jennifer Martinez</td>
+                <td>Bronze</td>
+                <td>1100</td>
+              </tr>
+            </tbody>
+          </table>
+        </div>
+        <button className="btn btn-lg">Load more</button>
       </div>
-      <button className="btn btn-lg">Load more</button>
     </div>
   );
Index: client/src/main.jsx
===================================================================
--- client/src/main.jsx	(revision 4d0820794bf81c0be7e1dd1a9a1fa0c5156df023)
+++ client/src/main.jsx	(revision cdddb452dcea23dc778d472452e7d26d0a4aaf5c)
@@ -9,5 +9,9 @@
 import Dashboard from './Dashboard/Dashboard';
 import CreatePost from './CreatePost/CreatePost';
+import Task from './Dashboard/components/Task';
 import Forum from './Dashboard/components/Forum';
+import ForumPostDetail from './Dashboard/components/ForumPostDetail';
+import Profile from './Dashboard/components/Profile';
+import LeaderBoardEx from './LandingPage/components/LeaderBoardEx';
 createRoot(document.getElementById('root')).render(
   <StrictMode>
@@ -17,7 +21,13 @@
         <Route path="/register" element={<Register />} />
         <Route path="/login" element={<Login />} />
-        <Route path="/dashboard" element={<Dashboard />} />
-        <Route path="/create-post" element={<CreatePost />} />
-        <Route path="/forum" element={<Forum />} />
+        <Route path="/dashboard" element={<Task />} />
+        <Route path="/dashboard/create-post" element={<CreatePost />} />
+        <Route path="/dashboard/forum" element={<Forum />} />
+        <Route
+          path="/dashboard/forum-detail/:postId"
+          element={<ForumPostDetail />}
+        />
+        <Route path="/dashboard/profile" element={<Profile />} />
+        <Route path="/dashboard/leaderboard" element={<LeaderBoardEx />} />
       </Routes>
     </Router>
