diff --git a/diplomas/src/pages/alumnosManual.jsx b/diplomas/src/pages/alumnosManual.jsx
index 8e9d090..51539df 100644
--- a/diplomas/src/pages/alumnosManual.jsx
+++ b/diplomas/src/pages/alumnosManual.jsx
@@ -38,6 +38,7 @@ export default function AlumnosManual() {
     defaultValues: {
       nombre: "",
       correo: "",
+      telefono: "",
       cursoSeleccionado: "",
     },
   });
@@ -64,6 +65,7 @@ export default function AlumnosManual() {
         {
           nombre: data.nombre,
           correo: data.correo,
+          telefono: data.telefono,
           nombreCurso: data.cursoSeleccionado, // Guardar el nombre del curso
         },
       ]);
@@ -114,6 +116,19 @@ export default function AlumnosManual() {
                 </p>
               )}
             </div>
+            <div className="mb-3">
+              <Input
+                type="text"
+                placeholder="Teléfono"
+                {...register("telefono")}
+                className="w-full px-3 py-2 border border-gray-300 rounded-md"
+              />
+              {errors.telefono && (
+                <p className="text-red-500 text-sm mt-1">
+                  {errors.telefono.message}
+                </p>
+              )}
+            </div>
             <div className="mb-4">
               <Select
                 onValueChange={(value) => setValue("cursoSeleccionado", value)}
diff --git a/diplomas/src/pages/alumnosVista.jsx b/diplomas/src/pages/alumnosVista.jsx
index f1dad9f..1778a34 100644
--- a/diplomas/src/pages/alumnosVista.jsx
+++ b/diplomas/src/pages/alumnosVista.jsx
@@ -19,12 +19,14 @@ import {
   SelectTrigger,
   SelectValue,
 } from "@/components/ui/select";
+import { set } from "react-hook-form";
 
 export default function AlumnosVista() {
   const [alumnos, setAlumnos] = useState([]);
   const [alumnoEditando, setAlumnoEditando] = useState(null);
   const [nuevoNombre, setNuevoNombre] = useState("");
   const [nuevoCorreo, setNuevoCorreo] = useState("");
+  const [nuevoNumero, setNuevoNumero] = useState(""); 
   const [mostrarModal, setMostrarModal] = useState(false);
   const [modalMensaje, setModalMensaje] = useState("");
   const [nuevoCurso, setNuevoCurso] = useState("");
@@ -49,7 +51,10 @@ export default function AlumnosVista() {
   };
 
   const cargarAlumnos = async () => {
-    const { data, error } = await supabaseClient.from("alumno").select("*");
+    const { data, error } = await supabaseClient
+      .from("alumno")
+      .select("id, nombre, correo, telefono, curso_id, curso(nombre)")
+      .order("id", { ascending: true });
     if (error) {
       console.error("Error al cargar alumnos:", error.message);
     } else {
@@ -62,7 +67,8 @@ export default function AlumnosVista() {
     setAlumnoEditando(alumno.id);
     setNuevoNombre(alumno.nombre);
     setNuevoCorreo(alumno.correo);
-    setNuevoCurso(alumno.nombreCurso);
+    setNuevoNumero(alumno.telefono);
+    setNuevoCurso(alumno.curso_id);
   };
 
   // Cancelar edición
@@ -70,6 +76,7 @@ export default function AlumnosVista() {
     setAlumnoEditando(null);
     setNuevoNombre("");
     setNuevoCorreo("");
+    setNuevoNumero("");
     setNuevoCurso("");
   };
 
@@ -80,7 +87,8 @@ export default function AlumnosVista() {
       .update({
         nombre: nuevoNombre,
         correo: nuevoCorreo,
-        nombreCurso: nuevoCurso,
+        telefono: nuevoNumero,
+        curso_id: nuevoCurso,
       })
       .eq("id", id);
 
@@ -127,6 +135,7 @@ export default function AlumnosVista() {
               <th className="py-2 border-b">ID</th>
               <th className="py-2 border-b">Nombre</th>
               <th className="py-2 border-b">Correo</th>
+              <th className="py-2 border-b">Teléfono</th>
               <th className="py-2 border-b">Curso</th>
               <th className="py-2 border-b">Acciones</th>
             </tr>
@@ -152,6 +161,13 @@ export default function AlumnosVista() {
                       onChange={(e) => setNuevoCorreo(e.target.value)}
                     />
                   </td>
+                  <td className="py-2 px-4 border-b">
+                    <Input
+                      type="text"
+                      value={nuevoNumero}
+                      onChange={(e) => setNuevoNumero(e.target.value)}
+                    />
+                  </td>
                   <td className="py-2 px-4 border-b">
                     <Select
                       value={nuevoCurso}
@@ -162,7 +178,7 @@ export default function AlumnosVista() {
                       </SelectTrigger>
                       <SelectContent>
                         {cursos.map((curso) => (
-                          <SelectItem key={curso.id} value={curso.nombre}>
+                          <SelectItem key={curso.id} value={curso.id.toString()}>
                             {curso.nombre}
                           </SelectItem>
                         ))}
@@ -189,7 +205,8 @@ export default function AlumnosVista() {
                   <td className="py-2 px-4 border-b">{alumno.id}</td>
                   <td className="py-2 px-4 border-b">{alumno.nombre}</td>
                   <td className="py-2 px-4 border-b">{alumno.correo}</td>
-                  <td className="py-2 px-4 border-b">{alumno.nombreCurso}</td>
+                  <td className="py-2 px-4 border-b">{alumno.telefono}</td>
+                  <td className="py-2 px-4 border-b">{alumno.curso?.nombre || "Sin curso"}</td>
                   <td className="py-2 px-4 border-b space-x-2">
                     <Button
                       className="bg-blue-500 hover:bg-blue-700 text-white font-bold py-1 px-3 rounded"
diff --git a/diplomas/src/pages/cursosVista.jsx b/diplomas/src/pages/cursosVista.jsx
index cc5e1b2..47db636 100644
--- a/diplomas/src/pages/cursosVista.jsx
+++ b/diplomas/src/pages/cursosVista.jsx
@@ -31,11 +31,30 @@ export default function CursosVista() {
   }, []);
 
   const cargarCursos = async () => {
-    const { data, error } = await supabaseClient.from("curso").select("*");
+    const { data, error } = await supabaseClient
+      .from("curso")
+      .select(`
+        id,
+        nombre,
+        descripcion,
+        horas,
+        curso_competencia (
+          competencia (
+            id,
+            nombre
+          )
+        )
+      `)
+      .order("id", { ascending: true });
     if (error) {
       console.error("Error al cargar cursos:", error.message);
     } else {
-      setCursos(data);
+      // Transformar los datos para que las competencias estén directamente en el objeto curso
+      const cursosConCompetencias = data.map((curso) => ({
+        ...curso,
+        competencias: curso.curso_competencia.map((cc) => cc.competencia),
+      }));
+      setCursos(cursosConCompetencias);
     }
   };
 
@@ -62,7 +81,7 @@ export default function CursosVista() {
         nombre: nuevoNombre,
         descripcion: nuevaDescripcion,
         horas: nuevaHoras,
-        competencias: competenciasGuardadas,
+        //competencias: competenciasGuardadas,
       })
       .eq("id", id);
 
@@ -105,6 +124,7 @@ export default function CursosVista() {
         <table className="min-w-full bg-white border">
           <thead>
             <tr className="bg-gray-100">
+              <th className="py-2 border-b">ID</th>
               <th className="py-2 border-b">Nombre</th>
               <th className="py-2 border-b">Descripción</th>
               <th className="py-2 border-b">Horas</th>
@@ -116,6 +136,7 @@ export default function CursosVista() {
             {cursos.map((curso) =>
               cursoEditando === curso.id ? (
                 <tr key={curso.id}>
+                  <td className="py-2 px-4 border-b text-center">{curso.id}</td>
                   <td className="py-2 px-4 border-b">
                     <Input
                       value={nuevoNombre}
@@ -166,17 +187,19 @@ export default function CursosVista() {
                   <td className="py-2 px-4 border-b">{curso.descripcion}</td>
                   <td className="py-2 px-4 border-b">{curso.horas}</td>
                   <td className="py-2 px-4 border-b">
-                    {curso.competencias.join(", ")}
+                    {Array.isArray(curso.competencias) && curso.competencias.length > 0
+                      ? curso.competencias.map((comp) => comp.nombre).join(", ")
+                      : "Sin competencias"}
                   </td>
-                  <td className="py-2 border-b flex">
+                  <td className="py-2 px-4 border-b space-x-2">
                     <Button
-                      className="bg-blue-500 hover:bg-blue-700 text-white font-bold py-1 px-3 rounded m-1"
+                      className="bg-blue-500 hover:bg-blue-700 text-white font-bold py-1 px-3 rounded"
                       onClick={() => iniciarEdicion(curso)}
                     >
                       Editar
                     </Button>
                     <Button
-                      className="bg-red-500 hover:bg-red-700 text-white font-bold py-1 px-3 rounded m-1"
+                      className="bg-red-500 hover:bg-red-700 text-white font-bold py-1 px-3 rounded"
                       onClick={() => confirmarEliminacion(curso.id)}
                     >
                       Eliminar