diff --git a/src/app/components/Cards.js b/src/app/components/Cards.js
index 5497d7acda2447f1f284fafcc8f0159a50fd423c..e7a94f86c41b977a508886c15ed4d96125bc38f0 100644
--- a/src/app/components/Cards.js
+++ b/src/app/components/Cards.js
@@ -7,12 +7,14 @@ import Typography from "@mui/material/Typography";
 import Link from "next/link";
 import { mecredURL } from "@/axiosConfig";
 import DeleteOutlinedIcon from '@mui/icons-material/DeleteOutlined';
+import EditOutlinedIcon from "@mui/icons-material/EditOutlined";
 import { ImTelegram } from "react-icons/im";
 import { isLoggedIn, useLoginBarrier } from "@/app/handlers/loginHandler";
 import { useState, useEffect, useLayoutEffect } from "react";
 import { getStoredValue } from "@/app/handlers/localStorageHandler";
 import DeleteModal from "../recurso/[id]/components/deleteModal";
 import { Button } from "@mui/material";
+import { EditResourceModal } from "./EditResourceModal";
 
 
 /**
@@ -28,6 +30,7 @@ import { Button } from "@mui/material";
 export default function Cards(props) {
 
   const [deleteOpen, setDeleteOpen] = useState(false)
+  const [editOpen, setEditOpen] = useState(false)
   const [userData, setUserData] = useState([])
   const [userProfile, setUserProfile] = useState(false)
 
@@ -135,6 +138,18 @@ export default function Cards(props) {
   }
 
   let button = [
+    {
+      name: "Editar",
+      icon: <EditOutlinedIcon />,
+      action: () => {
+        if (!isLoggedIn()) {
+          return;
+        }
+  
+        setEditOpen(true); 
+      },
+      extraProps: {},
+    },
     {
       name: "Deletar",
       icon: <DeleteOutlinedIcon />,
@@ -143,15 +158,13 @@ export default function Cards(props) {
           //setNeedLoginOpen(true);
           return;
         }
-
+  
         setDeleteOpen(true);
       },
       extraProps: {},
     },
-  ]
-
-
-
+  ];
+  
   return (
     <Card
       className={`active:bg-ice-HC-dark active:rounded-3xl transition ease-in-out 2xl:w-[330px] xl:w-[290px] lg:w-[270px] max-lg:w-[290px] outline outline-1 outline-ice-HC-white ${props.page !== "recurso" && "items-center"}`}
@@ -245,6 +258,7 @@ export default function Cards(props) {
             {userProfile ?
               <div className="flex justify-end w-full">
                 <DeleteModal setUniqueResources={props.setUniqueResources} userProfile open={deleteOpen} onClose={() => setDeleteOpen(false)} idLogin={userData["id"]} resourceId={props["id"]} />
+                <EditResourceModal open={editOpen} onClose={() => setEditOpen(false)} setEditOpen={setEditOpen} resource={props.resource} />
                 {button.map((item, index) => (
                   <div key={index}>
                     <Button
diff --git a/src/app/components/EditResourceModal.js b/src/app/components/EditResourceModal.js
new file mode 100644
index 0000000000000000000000000000000000000000..f2911930be8b2283ee87efc7eb97fd76492af441
--- /dev/null
+++ b/src/app/components/EditResourceModal.js
@@ -0,0 +1,153 @@
+import { Button, Modal } from "@mui/material";
+import { useEffect, useState } from "react";
+import FieldLabel from "./FieldLabel";
+import CustomTextField from "../publicar/components/CustomTextField";
+import { getStoredValue } from "../handlers/localStorageHandler";
+import mecredApi from "@/axiosConfig";
+
+export function EditResourceModal({ open, onClose, resource, setEditOpen }) {
+    const [title, setTitle] = useState("");
+    const [description, setDescription] = useState("");
+    const [openSuccess, setOpenSuccess] = useState(false)
+
+    const token = getStoredValue("access_token");
+    const client = getStoredValue("client");
+    const uid = getStoredValue("uid");
+
+    useEffect(() => {
+        if (resource?.learning_object) {
+            setTitle(resource.learning_object.name ?? "");
+            setDescription(resource.learning_object.description ?? "");
+        }
+    }, [resource]);
+
+    if (!resource?.learning_object) return null;
+
+    const handleTitleChange = (e) => setTitle(e.target.value);
+    const handleDescriptionChange = (e) => setDescription(e.target.value);
+
+    const fetchData = async () => {
+        const payload = {
+            "id": resource?.learning_object.id,
+            "name": title,
+            "description": description
+        }
+        console.log("aa")
+
+        try {
+            await mecredApi.put(`/learning_objects/${resource?.learning_object.id}.json`, payload, {
+                headers: {
+                    "access-token": token,
+                    "token-type": "Bearer",
+                    client: client,
+                    uid: uid,
+                    Expires: 0,
+                },
+            });
+            setOpenSuccess(true)
+
+        } catch (error) {
+            // Tratar erros, se necessário
+            console.error('Erro ao enviar dados:', error);
+        }
+    };
+
+    const ModalSucess = ({ open, onClose }) => {
+        return (
+          <Modal open={open} onClose={onClose} className="grid place-items-center"
+            slotProps={{
+              backdrop: {
+                sx: {
+                  backgroundColor: "rgba(0, 0, 0, 0.3)", // Ajuste a opacidade conforme necessário
+                },
+              },
+            }}>
+            <div className="flex flex-col justify-center bg-ice-HC-dark p-5 rounded">
+              <p className="text-xl justify-center flex text-darkGray-HC-white-underline mb-2">
+                Recurso editado com sucesso!
+              </p>
+              <div className="flex flex-row mt-2 justify-center gap-3">
+                <button
+                  className="text-sm text-darkGray-HC-white-underline border-main rounded-lg normal-case font-bold bg-ice-HC-dark hover:bg-ice-HC-dark-hover"
+                  onClick={() => onClose()}
+                >
+                  OK
+                </button>
+              </div>
+            </div>
+          </Modal>
+        );
+      };
+
+    return (
+        <Modal
+            open={open}
+            onClose={onClose}
+            className="grid place-items-center"
+        >
+            <div className="bg-ice-HC-dark p-6 rounded-lg">
+            <ModalSucess  open={openSuccess} onClose={() => setOpenSuccess(false)}/>
+
+                <div className="flex justify-center mb-4">
+
+                    <p className="text-darkGray-HC-white-underline text-xl font-bold ">Editar recurso</p>
+                </div>
+                <FieldLabel
+                    name="Título do Recurso*"
+                    error={(!title)}
+                />
+                <CustomTextField
+                    multiline
+                    fullWidth
+                    value={title}
+                    placeholder={"Ex: Jogo Virtual sobre os Biomas do Brasil"}
+                    onChange={handleTitleChange}
+                    helperText={<div className=" w-full justify-end flex">
+                        {title.length}/100
+                    </div>}
+                    error={(title.length > 100) || (!title)}
+                    className="mb-5"
+                    sx={{
+                        "& .MuiOutlinedInput-input::placeholder": {
+                            color: "var(--darkGray-HC-white)",
+                            opacity: 0.5,
+                        },
+                    }}
+                />
+                <FieldLabel name="Descrição geral do Recurso*" error={(!description)} />
+                <CustomTextField
+                    multiline
+                    rows={5}
+                    fullWidth
+                    value={description}
+                    placeholder={"Quais assuntos são contemplados neste recurso? Para quais objetivos este recurso pode ser destinado?"}
+                    onChange={handleDescriptionChange}
+                    helperText={<div className=" w-full justify-end flex">
+                        {description.length}/1500
+                    </div>}
+                    error={(description.length > 1500) || (!description)}
+                    className="mb-5"
+                />
+                <div className="flex w-full justify-end p-3">
+
+                    <Button
+                        onClick={() => { setEditOpen(false) }}
+                        type="button"
+                        variant="text"
+                        className="normal-case w-36 text-base text-darkGray-HC-white-underline font-bold mr-2 outline outline-1 outline-ice-HC-white hover:bg-lightGray-HC-white hover:text-darkGray-HC-dark-underline"
+                    >
+                        Fechar
+                    </Button>
+                    <Button
+                        onClick={() => fetchData()}
+                        type="submit"
+                        className="border-turquoise-HC-white w-36 rounded-lg hover:bg-darkTurquoise-HC-dark bg-turquoise-HC-white text-base text-white-HC-dark-underline hover:text-white-HC-underline font-bold normal-case flex"
+                        variant="outlined"
+                    >
+                        Continuar
+                    </Button>
+                </div>
+            </div>
+        </Modal>
+    )
+}
\ No newline at end of file
diff --git a/src/app/components/InfiniteScrollCards.js b/src/app/components/InfiniteScrollCards.js
index f1717290d44fa31789c331fea3e6dc2aecc6b0e5..483dfb50fb424639255fefe55f219ff4204c1f2e 100644
--- a/src/app/components/InfiniteScrollCards.js
+++ b/src/app/components/InfiniteScrollCards.js
@@ -137,7 +137,7 @@ export default function InfiniteScrollCards({ setMecLoading, data, searchClass,
                                 avatar={item["publisher"]["avatar"]}
                                 image={item["thumbnail"]}
                                 type={item["object_type"]}
-                                updated_at={item["updated_at"]}
+                                updated_at={item["created_at"]}
                             />
                         ))}
                     </div>
diff --git a/src/app/perfil/[id]/components/ProfileResources.js b/src/app/perfil/[id]/components/ProfileResources.js
index b445709dc9c085292aa5dcf8a8155f27ce099221..7b66a69182a2e7428007e41ae3e67ae58a74a494 100644
--- a/src/app/perfil/[id]/components/ProfileResources.js
+++ b/src/app/perfil/[id]/components/ProfileResources.js
@@ -156,6 +156,7 @@ export default function ProfileResources({ id, idLogin }) {
                     updated_at={resource?.updated_at || resource.learning_object?.updated_at}
                     homologa={resource?.status}
                     setUniqueResources={setUniqueResources}
+                    resource={resource}
                   />
                 ))}
               </div>