Skip to content

CourseShare es una App en donde los usuarios registrados pueden visualizar los posts de otros miembros, incluida una sección sobre post destacados, además pueden realizar publicaciones, editarlos y eliminarlos y buscar algún miembro en específico. El usuario puede asignar a sus publicaciones el modo público o privado y dar like a sus publicacion…

Notifications You must be signed in to change notification settings

margaZM/LIM015-social-network

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🌟 CourseShare 📚

diseñofinal

1. Definición del producto 📝

Si eres autodidacta y estás en constante aprendizaje CourseShare ¡te va a encantar! Esta red social esta dirigida para personas que buscan y comparten los mejores recursos didácticos para su formación académica y profesional.

CourseShare está desarrollada con HTML, CSS, Javascript y Firebase, en donde los usuarios registrados pueden visualizar los posts de otros miembros, incluida una sección sobre post destacados, además pueden realizar publicaciones, editarlos y eliminarlos y buscar algún miembro en específico. El usuario puede asignar a sus publicaciones el modo público o privado y dar like a sus publicaciones favoritas.

Te envitamos a registrarte y probar la funcionalidad de courseShare a traves este link.

2. Historias de usuarios 👩 👨

Historias de usuario Criterios minimos de aceptación Definición de terminado
Historia 1: Yo como usuario nuevo quiero registrarme en la red social: con mi correo electrónico o con Google para posteriormente iniciar sesión. Notificar al usuario mediante alertas en caso de cometer un error al registrarse, fallas de internet, correo registrado y/o registro exitoso y almacenar los datos en firestore. Cuando el usuario logre crear su cuenta con éxito la información queda almacenada en firebase y se le envia un alerta de información.
Historia 2: Yo como usuario registrado quiero ingresar a la red social: mediante mi correo electrónico o google para loguearme de una manera fácil y/o recuperar contraseña en caso de olvido. Validar las credenciales ingresadas por el usuario para el inico de sesión, en caso de olvido permitir recuperar la contraseña y redireccionar al usuario al timeline en caso de inicio de sesión exitoso. El usuario logra cambiar la contraseña en caso de olvido y puede redireccionar correctamente a la vistas de timeline.
Historia 3: Yo como usuario registrado quiero ver las publicaciones de todos los usarios de la red social: para conocer e informarme sobre los nuevas recomendaciones, opiniones, etc de los demás. Visualizar las publicaciones públicas desde las más recientes hasta las más antiguas, incluyendo una sección para post destacados. El usuario logra visualizar las publicaciones en orden ascendente y los post mas populares y no puede visualizar las publicaciones marcadas como privadas.
Historia 4: Yo como usuario registrado quiero editar mis publicaciones: para guardar la nueva información y visualizar mis cambios. Mostrar un boton para editar cada post elaborado por el usuario y enviar esa publicacion al timeline. El usuario solo puede editar sus publicaciones, logra guardar los cambios realizados y visualizarlos en el timeline.
Historia 5: Yo como usuario registrado quiero eliminar mis publicaciones: para quitarlas del muro previa notificación de eliminación. Mostrar un boton para eliminar cada post elaborado por el usuario y removerlo del firestore y del timelime. El usuario solo puede eliminar sus publicaciones, con una confirmación previa y estas ya no se refejan en el timelime.
Historia 6: Yo como usuario registrado quiero cerrar sesión: para asegurarme que nadie más pueda manipular mi cuenta sin autorización. Mostrar un botón para cerrar sesión de la cuenta. El usuario logra salir de su cuenta exitosamente y es redirigido a la págia de inicio.
Historia 7: Yo como usuario quiero visualizar el perfil de otros usuarios: para conocer sobre sus intereses y datos personales. Al pulsar en el nombre de otros usuarios se logra visualizar su información y sus publicaciones públicas realizadas. El usuario puede visitar el perfil de otros usuarios sin editar ningun contenido de los mismos.
Historia 8: Yo como usuario registrado quiero darle me encanta a las publicaciones: para indicar si me gusta el curso recomendado en dicha publicación. Mostrar y restar un like de acuerdo a la interaccion de un usuario. El usuario pulsa en el icono de like y aparece un corazon relleno en rojo y este se sigue sumando por cada reaccion de otros usuarios, al dar dislike se debe restar la cantidad y el corazon queda vacio.
Historia 9: Yo como usuario registrado quiero un buscador: para ubicar de forma fácil nombre de usuarios. Crear un input de búsqueda para buscar un usuario específico para visitar su perfil. El usuario podrá realizar búsquedas de otros usuarios por su nombre y al encontrarlos visitar su perfil.
Historia 10: Yo como usuario registrado quiero agrupar mis publicaciones: para visualizar diferentes categorías de cursos. Crear etiquetas para que el usuario pueda seleccionar la categoría a la que pertenece el curso en donde se almacenanarán exclusivamente ese tipo de cursos. El usuario realiza un post y escoge una categoría especifica a la que pertenece, cada post se agrupa por el usuario de de acuerdo a la categoría escogida.
Historia 11: Yo como usuario registrado quiero comentar publicaciones: para poder compartir mi opinión a otros usuarios. Mostrar un boton para comentar un post particular y visualizarlo en tiempo real. El usuario puede comentarpor el usuario de otras publicaciones y es visualizado satisfactoriamente en la publicación original.

3. Plan de acción ✍️

El plan de acción lo manejamos desde la plataforma Trello, en donde desarrollamos todas las historias de usuario y las actividades necesarias para definirla como terminado, en este link se puede ver a detalle la ejecución del mismo.

De igual forma manejamos la plataforma de Github projects para la asignación de milestones por cada sprint y la asignación de issues a cada miembro del equipo.

4. Diseño ✨

En el primer sprint desarrolamos el prototipo de baja fidelidad que a continuación se puede visualizar y realizamos una encuesta para obtener las sugerencias de los usuarios, en cuanto a estructura, paleta de colores y nombre de la red social. Obtuvimos que al 33.3% les gustó el nombre de courseShare seguido de courses Network con 27.8%. El logo finalizado que usamos en el diseño fue escogido por el 39% de los encuestados y la estructura fue aprobada por más del 50%. Dicha encuesta se puede visualizar en el siguiente link.

Prototipo de baja fidelidad

Login de baja fidelidad login

Timeline Timeline

Profile Profile

En el siguiente sprint desarrolamos el prototipo de alta fidelidad en figma, el cual presentamos a continuación, en donde consideramos las sugerencias de los usuarios y realizamos algunos cambios en la estructura y diseño.

Prototipo final en figma

Login login

Timeline Timeline

Profile Profile

Profile

Diseño responsive

CourseShare tiene un diseño responsive por lo tanto permite que pueda ser visualizado en diferentes dispositivos:

Login login

Timeline Timeline

Timeline Timeline

5. Tecnologías empleadas 🔨

6. Checklist

  • Usa VanillaJS.
  • Pasa linter (npm run pretest)
  • Pasa tests (npm test)
  • Pruebas unitarias cubren un mínimo del 70% de statements, functions y lines y branches.
  • Incluye un plan de acción de tus objetivos de aprendizaje prioritizado en README.md (o otro archivo).
  • Incluye Definición del producto clara e informativa en README.md.
  • Incluye historias de usuario en README.md.
  • Incluye sketch de la solución (prototipo de baja fidelidad) en README.md.
  • Incluye _Diseño de la Interfaz de Usuario (prototipo de alta fidelidad) en README.md.
  • Incluye el listado de problemas que detectaste a través de tests de usabilidad en el README.md.
  • Es una SPA.
  • Creación de cuenta de acceso y autenticación con cuenta de correo y contraseña, y también con una cuenta de Google.
  • Solamente se permite el acceso a usuarios con cuentas válidas.
  • Si hay errores, se deben mostrar mensajes descriptivos para ayudar al usuario a corregirlos.
  • Lo que se escriba en el campo (input) de contraseña debe ser secreto.
  • Poder publicar un post, editar y eliminar un post específico
  • No pueden haber usuarios repetidos.
  • UI: Es responsive.
  • Poder dar y quitar like a una publicación. Máximo uno por usuario. Llevando un conteo de los likes.
  • Permite crear posts con imágenes.
  • Permite buscar usuarios.
  • Permite definir la privacidad de los posts (público o solamente para amigos).
  • Permite comentar o responder una publicación.
  • Permite editar perfil.

7. Recursos

Developers - Lima 015 💻

👩‍💻 Diana Huaripayta Gonzales

👩‍💻 yovana velasquez cruz

👩‍💻 Margarita Zambrano

About

CourseShare es una App en donde los usuarios registrados pueden visualizar los posts de otros miembros, incluida una sección sobre post destacados, además pueden realizar publicaciones, editarlos y eliminarlos y buscar algún miembro en específico. El usuario puede asignar a sus publicaciones el modo público o privado y dar like a sus publicacion…

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 66.3%
  • CSS 25.3%
  • HTML 8.4%