diff --git a/package-lock.json b/package-lock.json
index 2e007d4980391f987263f34a932031a3279756b1..b3c50b267ff195e4a22d0d244640d7e2e81b4ae8 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,12 +1,12 @@
 {
   "name": "frontend-mecred",
-  "version": "0.60.1",
+  "version": "0.61.0",
   "lockfileVersion": 3,
   "requires": true,
   "packages": {
     "": {
       "name": "frontend-mecred",
-      "version": "0.60.1",
+      "version": "0.61.0",
       "dependencies": {
         "@emotion/react": "^11.11.4",
         "@emotion/styled": "^11.11.5",
diff --git a/package.json b/package.json
index ebd2eb9e1cad4d95395941c7d2511d58c2b580b4..91c713751971f3aa5829ac451efe5d2246dfa36f 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
 {
   "name": "frontend-mecred",
-  "version": "0.60.1",
+  "version": "0.61.0",
   "private": true,
   "scripts": {
     "dev": "npx next dev",
diff --git a/src/app/components/Cards.js b/src/app/components/Cards.js
index fefe3a577794b5261ae354019519cc6dd8d81e57..580f786c9b12ca998337b7f12ae9ceb82fe9d394 100644
--- a/src/app/components/Cards.js
+++ b/src/app/components/Cards.js
@@ -114,8 +114,9 @@ export default function Cards(props) {
           props["image"] === null
             ? getDefaultThumbnail(props["type"])
             : `https://api.portalmec.c3sl.ufpr.br${props["image"]}`
-        }
-        alt="img"
+          }
+          alt="imagem"
+          title={props.title}
       />
 
       <CardHeader
@@ -135,7 +136,9 @@ export default function Cards(props) {
             />
         }
         title={
-          <Typography variant="body2" className="line-clamp-2 text-main-text font-bold">
+          <Typography variant="body2" color="" className="line-clamp-2 text-main-text font-bold"
+            title={props["title"]}
+          >
             {props["title"]}
           </Typography>
         }
diff --git a/src/app/components/GroupCardsCollections.js b/src/app/components/GroupCardsCollections.js
index a8a588ef1f84e2b5ecd45805777336f361906285..cebcda7d4cf9d9841f56c77ab3aaa6e4f37b36c3 100644
--- a/src/app/components/GroupCardsCollections.js
+++ b/src/app/components/GroupCardsCollections.js
@@ -2,6 +2,7 @@
 import { useEffect, useState } from "react";
 import Cards from "./Cards";
 import { Button } from "@mui/material";
+import { Tooltip } from "@mui/material";
 
 /**
  * Retorna na tela uma coleção
@@ -40,7 +41,6 @@ export default function GroupCardsCollections({ data, cardsPerRow }) {
                                 avatar={item["collectionable"]["publisher"]["avatar"]}
                                 image={item["collectionable"]["thumbnail"]}
                                 updated_at={item["collectionable"]["updated_at"]}
-
                             />
                         );
                     })
@@ -63,8 +63,9 @@ export default function GroupCardsCollections({ data, cardsPerRow }) {
                             className="mb-2 border-hidden hover:bg-transparent rounded-xl  normal-case flex "
                             onClick={toggleContent}
                         >
-                            <p className="hover:bg-main px-4 text-main-text-click text-lg rounded-md">
-
+                            <p className="hover:bg-main px-4 text-main-text-click text-lg rounded-md"
+                                alt={expanded ? "Ver menos..." : "Ver mais..."}
+                            >
                                 {expanded ? "Ver menos..." : "Ver mais..."}
                             </p>
                         </Button>
diff --git a/src/app/components/Header.js b/src/app/components/Header.js
index 377b9cc3e1ee3fe595142406ab901a542dbab7b8..82e4e5d81575270abf6e116410e703b8ed558015 100644
--- a/src/app/components/Header.js
+++ b/src/app/components/Header.js
@@ -81,6 +81,8 @@ function DefaultContent({
       <div className="flex justify-end shrink-0 items-center pr-2">
         <button
           type="button"
+          alt="Abrir busca"
+          title="Abrir busca"
           className="lg:hidden bg-secondary hover:bg-text-color w-10 h-10 rounded text-white shrink-0 transition"
           onClick={handleToggleMobileSearch}
         >
@@ -105,6 +107,8 @@ function DefaultContent({
           <>
             <button
               type="button"
+              alt="Notificações"
+              title="Notificações"
               className="bg-transparent hover:text-secondary w-10 h-10 rounded text-text-color flex-shrink-0 transition"
             >
               <NotificationsIcon className="h-full text-3xl" />
@@ -131,6 +135,8 @@ function MobileSearch({ setQuery, handleToggleMobileSearch }) {
       <SearchComponent setQuery={setQuery} />
       <button
         type="button"
+        alt="Fechar busca"
+        title="Fechar busca"
         className="bg-text-color hover:bg-text-color w-10 h-10 rounded text-white shrink-0 transition"
         onClick={handleToggleMobileSearch}
       >
diff --git a/src/app/components/MenuProfile.js b/src/app/components/MenuProfile.js
index 1b17b0f2dd27fb529d090ada17d479ec3fef4789..7c8dad3c6e8ae596b9c1f4de50a9626539ba358c 100644
--- a/src/app/components/MenuProfile.js
+++ b/src/app/components/MenuProfile.js
@@ -109,6 +109,8 @@ export default function AccountMenu() {
             aria-controls={open ? "account-menu" : undefined}
             aria-haspopup="true"
             aria-expanded={open ? "true" : undefined}
+            title="Meu Perfil"
+            alt="Acessar meu perfil"
           >
             {userData["avatar_file_name"] === null ? (
               <Avatar sx={{ width: 38, height: 38 }} className="mt-1">
diff --git a/src/app/components/SearchComponent.js b/src/app/components/SearchComponent.js
index 0c3a0eebcaf2d90b8ad0d194f237d638f054a1d0..7912f7ef5eacd55a6aea7a49684cdb8772370308 100644
--- a/src/app/components/SearchComponent.js
+++ b/src/app/components/SearchComponent.js
@@ -147,18 +147,24 @@ export default function SearchComponent({ setQuery, sizeWindow }) {
         </div>
         <button
           type="submit"
+          alt="Buscar"
+          title="Buscar"
           className=" bg-secondary hover:bg-text-color w-10 h-10 rounded text-white flex-shrink-0 transition"
         >
           <SearchIcon className="h-full text-3xl" />
         </button>
         <button
           type="button"
+          alt="Busca por voz"
+          title="Busca por voz"
           className=" bg-main-hover hover:bg-text-color w-10 h-10 rounded text-text-color hover:text-white flex-shrink-0 transition"
         >
           <KeyboardVoiceIcon className="h-full text-3xl" />
         </button>
         <button
-          type="button"
+          type="button" 
+          alt="Teclado virtual"
+          title="Teclado virtual"
           className=" bg-main-hover hover:bg-text-color w-10 h-10 rounded text-text-color hover:text-white flex-shrink-0 transition"
         >
           <KeyboardIcon className="h-full text-3xl" />
diff --git a/src/app/components/ShareModal.js b/src/app/components/ShareModal.js
index af10d68928206935d3635991db843798d7e17010..69422d4ccdcc8c52a5028309841fdcba93764075 100644
--- a/src/app/components/ShareModal.js
+++ b/src/app/components/ShareModal.js
@@ -35,6 +35,7 @@ export default function ShareModal({ open, onClose }) {
                   justifyContent: "start",
                 }}
                 href={`https://www.facebook.com/sharer.php?u=${url}`}
+                alt="Compartilhar no Facebook"
               >
                 <Image
                   className="w-6 h-6 self-start"
@@ -57,6 +58,7 @@ export default function ShareModal({ open, onClose }) {
                   justifyContent: "start",
                 }}
                 href={`https://twitter.com/intent/tweet?url=${url}`}
+                alt="Compartilhar no X"
               >
                 <Image
                   className="w-6 h-6 bg-black rounded-full p-[3px]"
@@ -81,6 +83,7 @@ export default function ShareModal({ open, onClose }) {
                 onClick={() => {
                   navigator.clipboard.writeText(url);
                 }}
+                alt="Copiar link para o clipboard"
               >
                 <ContentCopyIcon className="p-[1px]" />
                 <span>Copiar link</span>
diff --git a/src/app/entrar/components/LoginForm.js b/src/app/entrar/components/LoginForm.js
index 4a0436a4ea688efd4d566051492442698b37a4f2..3b6e3f5126d613d1ae51275bc3765146cc84fc43 100644
--- a/src/app/entrar/components/LoginForm.js
+++ b/src/app/entrar/components/LoginForm.js
@@ -5,6 +5,7 @@ import {
   Paper,
   TextField,
   Alert,
+  Tooltip,
 } from "@mui/material";
 import theme from "@/app/theme";
 import { ThemeProvider } from "@emotion/react";
@@ -59,6 +60,7 @@ export default function LoginForm({
                 className="m-5"
                 onChange={handleEmailChange}
                 error={errorMessage.length > 0}
+                alt="E-mail"
               />
               <TextField
                 fullWidth
@@ -67,12 +69,15 @@ export default function LoginForm({
                 className="mb-5"
                 onChange={handlePasswordChange}
                 error={errorMessage != errorMessage.length > 0}
-              />
+                alt="Senha"
+              /> 
               <Button
                 fullWidth
                 disableElevation
                 className="bg-secondary text-white hover:bg-secondary-hover normal-case font-bold"
                 type="submit"
+                alt="Entrar"
+                title="Entrar"
               >
                 Entrar
               </Button>
@@ -80,7 +85,9 @@ export default function LoginForm({
                 Esqueceu a senha?{" "}
                 <a
                   onClick={handleOpenModalPasswd}
-                  className="text-secondary cursor-pointer hover:font-bold">
+                  className="text-secondary cursor-pointer hover:font-bold"
+                  alt="Esqueceu a senha?"
+                >
                   Clique aqui.
                 </a>
               </p>
@@ -89,6 +96,7 @@ export default function LoginForm({
                 <a
                   onClick={handleOpenModalSignup}
                   className="text-secondary hover:font-bold cursor-pointer"
+                  alt="Cadastre-se"
                 >
                   Cadastre-se.
                 </a>
@@ -103,16 +111,22 @@ export default function LoginForm({
             className="my-2 bg-white border-white text-main-text normal-case flex gap-2 w-96 font-bold hover:bg-main-hover"
           >
             <span>Entrar com o</span>
-            <Image className="w-14 h-6" src="/govbr.svg" alt="govbr logo" width={10} height={10} />
+            <Image className="w-14 h-6" src="/govbr.svg" alt="govbr" width={10} height={10} />
           </Button>
-          <button onClick={() => router.push("/sobre")} className="text-secondary lg:text-nowrap bg-white py-1 w-96 hover:bg-main-hover rounded cursor-pointer">Entrar sem cadastrar</button>
+          <button 
+            onClick={() => router.push("/sobre")} 
+            className="text-secondary lg:text-nowrap bg-white py-1 w-96 hover:bg-main-hover rounded cursor-pointer"
+            alt="Entrar sem cadastrar"
+            >
+              Entrar sem cadastrar
+          </button>
           <Button
             fullWidth
             disableElevation
             variant="outlined"
             className="mt-2 bg-white border-white text-main-text normal-case flex gap-2 w-96 hover:bg-main-hover"
           >
-            <Image className="w-6 h-6" src="/google.svg" alt="google logo" width={10} height={10} />
+            <Image className="w-6 h-6" src="/google.svg" width={10} height={10} />
             <span>Entrar com o Google</span>
           </Button>
           <SignupModal open={openModalSignup} handleClose={handleCloseModalSignup} />
diff --git a/src/app/entrar/components/PasswordModal.js b/src/app/entrar/components/PasswordModal.js
index 16a67b90b87d4af749054348d6cddbecc17b3c1f..449c7565b0569402148786ded8156a0d75eaa1d9 100644
--- a/src/app/entrar/components/PasswordModal.js
+++ b/src/app/entrar/components/PasswordModal.js
@@ -77,12 +77,14 @@ export default function PasswordModal({ open, handleClose }) {
             className="mb-5"
             value={userEmail}
             error={!userEmail && error}
+            alt="E-mail (obrigatório)"
           />
           <Button
             fullWidth
             disableElevation
             className="bg-secondary text-white hover:bg-secondary-hover"
             type="submit"
+            alt="Enviar"
           >
             Enviar
           </Button>
diff --git a/src/app/entrar/components/SignupModal.js b/src/app/entrar/components/SignupModal.js
index 6f5ad0b89fce142af81947335814edae503fa8b9..c655da6340448bf9a463592c20bc6a502b9dc186 100644
--- a/src/app/entrar/components/SignupModal.js
+++ b/src/app/entrar/components/SignupModal.js
@@ -80,6 +80,7 @@ export default function SignupModal({ open, handleClose }) {
             className="my-5"
             value={userName}
             error={!userName && error}
+            alt="Nome Completo (obrigatório)"
           />
           <TextField
             fullWidth
@@ -89,6 +90,7 @@ export default function SignupModal({ open, handleClose }) {
             className="mb-5"
             value={userEmail}
             error={!userEmail && error}
+            alt="E-mail (obrigatório)"
           />
           <TextField
             fullWidth
@@ -98,6 +100,7 @@ export default function SignupModal({ open, handleClose }) {
             className="mb-5"
             value={userPassword}
             error={!userPassword && error}
+            alt="Senha (obrigatório)"
           />
           <TextField
             fullWidth
@@ -115,12 +118,14 @@ export default function SignupModal({ open, handleClose }) {
               userPasswordConfirmation != userPassword &&
               helperText
             }
+            alt="Confirmar senha (obrigatório)"
           />
           <Button
             fullWidth
             disableElevation
             className="bg-secondary text-white hover:bg-secondary-hover"
             type="submit"
+            alt="Enviar"
           >
             Enviar
           </Button>
@@ -132,6 +137,7 @@ export default function SignupModal({ open, handleClose }) {
             disableElevation
             variant="outlined"
             className="mt-2 border-main text-main-text normal-case flex gap-2"
+            alt="Cadastrar-se com o Google"
           >
             <Image
               height="0"
diff --git a/src/app/novaSenha/page.js b/src/app/novaSenha/page.js
index 30e95ebfadce9031eb006839a39d34981d10d814..931bb0a72df8267a22f6d179bd5a78659763f27e 100644
--- a/src/app/novaSenha/page.js
+++ b/src/app/novaSenha/page.js
@@ -112,6 +112,7 @@ export default function ResetPassword() {
                                 name="senha"
                                 onChange={(e) => setPassword(e.target.value)}
                                 value={password}
+                                alt="Nova Senha"
                             />
                             <TextField
                                 fullWidth
@@ -121,12 +122,14 @@ export default function ResetPassword() {
                                 name="confirma-senha"
                                 onChange={(e) => setPasswordConfirmation(e.target.value)}
                                 value={passwordConfirmation}
+                                alt="Confirme a Nova Senha"
                             />
                             <Button
                                 fullWidth
                                 disableElevation
                                 className="bg-secondary text-white hover:bg-secondary-hover"
                                 type="submit"
+                                alt="Trocar a senha"
                             >
                                 Trocar a Senha
                             </Button>
diff --git a/src/app/perfil/[id]/components/AboutCard.js b/src/app/perfil/[id]/components/AboutCard.js
index b7724d04c2cdea62a6e29ac1f2bac899f19f6dd5..a940e1bfadf826e095e3b533e72c21e552a1231b 100644
--- a/src/app/perfil/[id]/components/AboutCard.js
+++ b/src/app/perfil/[id]/components/AboutCard.js
@@ -35,7 +35,7 @@ const AboutCard = ({ title, content }) => {
                     {showButton && (
                         <button
                             onClick={toggleContent}
-                            className="bg-white text-main-text px-4 py-2 rounded transition-colors hover:bg-gray-200 text-base font-medium "
+                            className="bg-white text-main-text px-4 py-2 rounded transition-colors hover:bg-gray-200 text-base font-medium"
                         >
                             {expanded ? 'Ver menos' : 'Ver mais'}
                             {expanded ? <KeyboardArrowUpIcon /> : <KeyboardArrowDownIcon />}
diff --git a/src/app/perfil/[id]/components/CardsHomologation.js b/src/app/perfil/[id]/components/CardsHomologation.js
index 65f9668e6d9435d2c8f472f5e18ae19ea91c0331..11026e6b8667ca9c19f5021aff1da4b221b85d19 100644
--- a/src/app/perfil/[id]/components/CardsHomologation.js
+++ b/src/app/perfil/[id]/components/CardsHomologation.js
@@ -74,7 +74,8 @@ export default function CardsHomologation({ item, key }) {
           item["learning_object"]["thumbnail"] === null
             ? getDefaultThumbnail(item["learning_object"]["object_type"])
             : `https://api.portalmec.c3sl.ufpr.br${item["learning_object"]["thumbnail"]}`
-        }
+          }
+        title={item["learning_object"]["thumbnail"]}
         alt="img"
       />
       <CardHeader
@@ -84,6 +85,7 @@ export default function CardsHomologation({ item, key }) {
             <Avatar
               src={`https://api.portalmec.c3sl.ufpr.br/${item["submitter"]["avatar"]}`}
               alt={item["submitter"]["name"]}
+              title={item["submitter"]["name"]}
               // className="-mt-9"
               sx={{
                 width: 28,
@@ -112,7 +114,9 @@ export default function CardsHomologation({ item, key }) {
         }
       />
       <div className="flex items-end">
-        <Button variant="outlined" className=" ">
+        <Button variant="outlined" className=" "
+          alt='Avaliar'
+        >
           Avaliar
         </Button>
       </div>
diff --git a/src/app/perfil/[id]/components/CreateCollectionModal.js b/src/app/perfil/[id]/components/CreateCollectionModal.js
index 309f58d97f741f74c4629f25ffd5b250e8ec26f7..debb292d83f716580dad744a29494117af280a08 100644
--- a/src/app/perfil/[id]/components/CreateCollectionModal.js
+++ b/src/app/perfil/[id]/components/CreateCollectionModal.js
@@ -88,12 +88,14 @@ export default function CreateCollectionModal({ open, onClose, idLogin }) {
                         <button
                             className=" border text-sm p-2  text-main border-main rounded-lg normal-case h-9 font-bold bg-secondary hover:bg-secondary-hover"
                             type="submit"
+                            alt='Criar Coleção'
                         >
                             Criar Coleção
                         </button>
                         <button
                             className=" border- text-sm p-2  text-main-text border-main rounded-lg normal-case h-9 font-bold bg-main hover:bg-main-hover"
                             onClick={() => onClose()}
+                            alt='Cancelar'
                         >
                             Cancelar
                         </button>
diff --git a/src/app/perfil/[id]/components/GroupButton.js b/src/app/perfil/[id]/components/GroupButton.js
index 47f0b8fd5b455b5446e0f2336ffe480e8acb414b..4570de9600322ae18e01a380d627235c1a5db106 100644
--- a/src/app/perfil/[id]/components/GroupButton.js
+++ b/src/app/perfil/[id]/components/GroupButton.js
@@ -88,6 +88,7 @@ export default function GroupButton({ profileData, idLogin }) {
             {idLogin == profileData["id"] ?
               <button
                 className={`text-sm rounded-lg normal-case h-9 font-bold  w-[90%] mt-2 text-white bg-secondary hover:bg-secondary-hover `}
+                alt="Editar meu perfil"
               >
                 <EditIcon className='m-1' fontSize='small' />
                 Editar meu perfil
@@ -109,6 +110,7 @@ export default function GroupButton({ profileData, idLogin }) {
             <button
               className="border text-sm	 text-main-text border-main rounded-lg normal-case h-9 font-bold w-[90%] mt-2 hover:bg-gray-100  "
               onClick={() => setShareOpen(true)}
+              alt="Compartilhar perfil"
             >
               <ShareIcon fontSize='small' className='m-1' />
               Compartilhar perfil
diff --git a/src/app/perfil/[id]/components/ProfileCollections.js b/src/app/perfil/[id]/components/ProfileCollections.js
index 5c73d987d4238d4673f2c7b0a4f3467a1592ef5d..46513e5e157fa496cc1ea6d8ee9ee1cdac95563c 100644
--- a/src/app/perfil/[id]/components/ProfileCollections.js
+++ b/src/app/perfil/[id]/components/ProfileCollections.js
@@ -79,6 +79,7 @@ export default function ProfileCollections({ id, idLogin }) {
                 {idLogin === id && <button
                     className=" inline-block px-2 text-sm  text-main border-main rounded-lg normal-case h-9 font-bold bg-secondary hover:bg-secondary-hover"
                     onClick={() => setCollectionOpen(true)}
+                    alt="Criar Nova Coleção"
                 >
                     Criar Nova Coleção
                 </button>}
@@ -117,6 +118,7 @@ export default function ProfileCollections({ id, idLogin }) {
                     variant="outlined"
                     className="mb-2 border-hidden hover:bg-transparent rounded-xl  normal-case "
                     onClick={() => toggleContent()}
+                    alt="Ver mais"
                 >
                     <p className="hover:bg-main px-4 text-gray-600 text-lg rounded-md">
 
diff --git a/src/app/perfil/[id]/components/ProfileHomologation.js b/src/app/perfil/[id]/components/ProfileHomologation.js
index 5a6d9786b770e6ae3291db2225035c773dea0919..b9867a08f2e591a76d7d08de61d73fb8527b11f4 100644
--- a/src/app/perfil/[id]/components/ProfileHomologation.js
+++ b/src/app/perfil/[id]/components/ProfileHomologation.js
@@ -61,6 +61,7 @@ export default function ProfileHomologation({ id }) {
               variant="outlined"
               className="mt-2 border-secondary rounded-xl hover:border-secondary-hover text-gray-700 normal-case flex gap-2"
               onClick={() => toggleContent()}
+              alt="Carregar mais"
             >
               {"Carregar mais"}
             </Button>
diff --git a/src/app/perfil/[id]/components/ProfileResources.js b/src/app/perfil/[id]/components/ProfileResources.js
index a7081fa98de046eae04b27af2ee36a9c7b68f223..0ae9bffd932c226cad40479853934c2b0efa2e99 100644
--- a/src/app/perfil/[id]/components/ProfileResources.js
+++ b/src/app/perfil/[id]/components/ProfileResources.js
@@ -59,6 +59,7 @@ export default function ProfileResources({ id, idLogin }) {
                     <Link href="/publicar">
                         <button
                             className=" inline-block px-2 text-sm  text-main border-main rounded-lg normal-case h-9 font-bold bg-orange hover:bg-orange-hover"
+                            alt="Publicar novo recurso"
                         >
                             Publicar novo recurso
                         </button>
diff --git a/src/app/perfil/[id]/components/SelectionButtons.js b/src/app/perfil/[id]/components/SelectionButtons.js
index 53088f38c380fad63c4bb22ed734d2020fc04925..e17a8aded60de0df52c3748bcc452576c3c4c10a 100644
--- a/src/app/perfil/[id]/components/SelectionButtons.js
+++ b/src/app/perfil/[id]/components/SelectionButtons.js
@@ -30,6 +30,8 @@ export default function SelectionButtons({ setOptButton, verifyCurator, idProfil
                             <button
                                 className="h-12 text-main-text text-base normal-case font-bold  w-[100%] hover:bg-gray-100 hover:text-secondary hover:border-b-2 hover:border-secondary focus:text-secondary focus:border-b-2 focus:border-secondary"
                                 onClick={() => setOptButton(index)}
+                                // title={item}
+                                alt={item}
                             >
                                 {item}
                             </button>
diff --git a/src/app/recurso/[id]/components/publisherInfo.js b/src/app/recurso/[id]/components/publisherInfo.js
index 03236281df547a520f6df2fcf9df8ea578cf9430..fd1ca93f9a0bce3e9ab9513ffd6500431e417d93 100644
--- a/src/app/recurso/[id]/components/publisherInfo.js
+++ b/src/app/recurso/[id]/components/publisherInfo.js
@@ -46,10 +46,13 @@ export default function PublisherInfo({ publisher, disabledButton=false }) {
             fill="true"
             src={"https://api.portalmec.c3sl.ufpr.br" + publisher.avatar}
             alt="Publisher Avatar"
+            title={publisher.name}
             className="m-4"
           />
         ) : (
-          <div className="rounded-full m-4 w-10 h-10 flex-shrink-0 bg-orange truncate"></div>
+          <div className="rounded-full m-4 w-10 h-10 flex-shrink-0 bg-orange truncate"
+            title={publisher.name}
+          ></div>
         )}
         <div className="flex flex-col justify-center p-1 text-main-text truncate">
           <div className="font-bold text-lg truncate sm:text-wrap">