diff --git a/app/(content)/(home)/home/page.tsx b/app/(content)/(home)/home/page.tsx
index f1bc58ea54fa018d41713a250d8bbfc795ab9ed4..9e2171592672784fa90f82f1e9d3fa0399a6b925 100644
--- a/app/(content)/(home)/home/page.tsx
+++ b/app/(content)/(home)/home/page.tsx
@@ -1,6 +1,8 @@
+import LikeButton from "@/components/LikeButton";
 import PostMessageForm from "@/components/PostMessageForm";
 import { prisma } from "@/prisma/db";
 import { Prisma} from "@prisma/client"
+type likeType = Prisma.LikeUncheckedCreateInput
 type messageType = Prisma.MessageUncheckedCreateInput
 type messageItemProps = {
     msg: messageType;
@@ -24,7 +26,8 @@ export default async function HomePage() {
             <h1>Home WIP</h1>
             <p>This will be where all messages show up.</p>
             <p>Needs a reload after posting!!</p>
-            <PostMessageForm data={messages}></PostMessageForm>
+            {/* <PostMessageForm data={messages}></PostMessageForm> */}
+            <PostMessageForm data={messages}/>
             {messages ?
                 <>
                     {messages.map((msg) => (
@@ -38,26 +41,10 @@ export default async function HomePage() {
     )
 }
 
-/* const MessageItem = ({ msg }: messageItemProps) => {
-    return (
-      <div className="flex border-b border-gray-200 py-4">
-        <div className="flex-shrink-0">
-          <div className="h-10 w-10 rounded-full bg-gray-300"></div>
-        </div>
-        <div className="ml-4">
-          <div className="flex items-center">
-            <span className="font-bold mr-2">{msg.author}</span>
-            <span className="text-gray-500 text-sm">
-              {formatDate(new Date(msg.sentAt!))}
-            </span>
-          </div>
-          <div className="text-gray-800">{msg.content}</div>
-        </div>
-      </div>
-    );
-  }; */
-
   const MessageItem = ({ msg }: messageItemProps) => {
+    if(!msg.id){
+      return <div></div>
+    }
     return (
       <div className="flex border-b border-gray-200 py-4">
         <div className="flex-shrink-0">
@@ -79,9 +66,11 @@ export default async function HomePage() {
                 {/* potential Image */}
               </div>
             </div>
-           
           </div>
-          
+          <LikeButton data={{
+            postId: msg.id,
+            author: msg.author
+          }}/>
           <span className="text-gray-600">Like Count: {msg.likeCount} | <span className="text-gray-600">ReplyButton (Number of Replies)</span></span>
         </div>
       </div>
diff --git a/app/api/likes/likeService.ts b/app/api/likes/likeService.ts
index 9368aafd101f916a254047ee2f5df36c269e5738..7b5b87f1ec81cfe2ffdd14a5df29b51f4c8b9f0e 100644
--- a/app/api/likes/likeService.ts
+++ b/app/api/likes/likeService.ts
@@ -9,7 +9,7 @@ type likeType = Prisma.LikeUncheckedCreateInput
  * 
  */
 
-export async function putLike(like: likeType){
+export async function putLike(like: likeType): Promise<likeType | undefined> {
 //check if like exists by this user and for this post
 // if exists delete
 //if not create
@@ -23,42 +23,47 @@ export async function putLike(like: likeType){
             })
 
             if(actualLike == null){
+                console.log("like is null")
                 throw Error("Message was not liked by this user")
             }
         
-            prisma.like.delete({
+            await prisma.like.delete({
                 where: {
-                    id: actualLike?.id
+                    id: actualLike.id
                 }
             })
 
-            prisma.message.update({
+            const msg = await prisma.message.update({
                 where: {
                     id: like.postId
                 },
                 data:{
-                    likeCount: {increment: 1}
+                    likeCount: {increment: -1}
                 }
             })
 
+            return undefined;
+
     } catch{
-        prisma.like.create({
+
+        const createdLike = await prisma.like.create({
             data:{
                 postId: like.postId,
-                author: like.author, 
-                gameId: like.gameId
+                author: like.author 
             }
         })
 
-        prisma.message.update({
+        const updatedMessage = await prisma.message.update({
             where: {
                 id: like.postId
             },
             data:{
-                likeCount: {increment: -1}
+                likeCount: {increment: 1}
             }
         })
-    }
 
+        return createdLike
+    }
 
+ 
 }
diff --git a/app/api/likes/route.ts b/app/api/likes/route.ts
index 3d144b0eee51aad7f3dece459635f1db8493143f..15c6d33000e90db02e37fbc3deb48c296d3f9a99 100644
--- a/app/api/likes/route.ts
+++ b/app/api/likes/route.ts
@@ -9,32 +9,13 @@ export async function PUT(req: NextRequest) {
 	const data:like = await req.json()
 	
 	console.log("router data: " + data, "status:")
-
-	console.log(data)
 	try {
-		await putLike(data)
+
+		const msg = await putLike(data)
 		return NextResponse.json({ status: 200, message: 'Like handled' })
 
 	} catch (error) {
 		console.log("fail" + error);
 		return NextResponse.json(error, { status: 500 });
 	}
-}
-
-export async function DELETE(req: NextRequest, res:NextResponse) {
-	const data = await req.json()
-	console.log("router data: " + data, "status:")
-
-	console.log(data)
-	try {
-		const messages = await prisma.message.findMany({
-
-		})
-
-		return NextResponse.json({ status: 200, messages: messages })
-	} catch (error) {
-		console.log("fail" + error);
-		// res.status(400)
-	}
-	console.log("get")
 }
\ No newline at end of file
diff --git a/components/LikeButton.tsx b/components/LikeButton.tsx
new file mode 100644
index 0000000000000000000000000000000000000000..c99f7d3072a5f5fb310de42afee4b7015b74dec1
--- /dev/null
+++ b/components/LikeButton.tsx
@@ -0,0 +1,43 @@
+"use client"
+
+import { Message } from "@prisma/client"
+import { useRouter } from "next/navigation";
+import { prisma } from "@/prisma/db";
+import { Prisma} from "@prisma/client"
+type likeType = Prisma.LikeUncheckedCreateInput
+
+import { startTransition, useState } from "react"
+
+export default function LikeButton(props: { data: likeType }) {
+  const router = useRouter();
+
+  async function postLike(e: any) {
+    e.preventDefault()
+    const msgLikeData = props.data;
+    const likeData = {} as likeType
+    likeData.author = msgLikeData.author
+    likeData.postId = msgLikeData.postId
+
+    const response = await fetch('http://localhost:3000/api/likes', {
+      method: 'PUT',
+      body: JSON.stringify(likeData)
+    })
+    
+    startTransition(() => {
+      // Refresh the current route and fetch new data from the server without
+      // losing client-side browser or React state.
+      router.refresh();
+    });
+    return await response.json()
+  }
+
+  return (
+    <div>
+      <form onSubmit={postLike}>
+        <button type="submit" className="mt-2 bg-gray-300 text-gray-800 px-4 py-2 rounded float-right">
+          Like
+        </button>
+      </form>
+    </div>
+  )
+}
\ No newline at end of file
diff --git a/components/PostMessageForm.tsx b/components/PostMessageForm.tsx
index 29a2db3edadb2939246077699d119fae5efb7b3b..e45e09bd0faf53cb23609e267b26ef1f748b90df 100644
--- a/components/PostMessageForm.tsx
+++ b/components/PostMessageForm.tsx
@@ -19,7 +19,6 @@ export default function PostMessageForm(props: { data: Message[] | null }) {
     // setMessages([...messagesState, formData])
     console.log(formData)
     formData.author = "Default Author"
-    formData.likeCount = 0;
     const response = await fetch('http://localhost:3000/api/messages', {
       method: 'POST',
       body: JSON.stringify(formData)