Devlog #2: Editar, borrar y likes

Esta semana seguí con la red social que estoy construyendo como proyecto final de The Odin Project. En el primer devlog mostré la base: registro, feed, perfiles, posts y búsqueda de usuarios.

Esta vez agregué tres cosas: editar posts, borrarlos, y un sistema de likes completo, para darle like y sacarlo tanto en tus posts como en los de otras personas.

Note

El video está narrado en inglés. Si no se ve el reproductor, podés verlo directamente en YouTube.

Lo nuevo

  • Editar un post: cada uno de tus posts tiene la opción de editar.
  • Borrar un post: al lado de editar, con confirmación antes de borrar.
  • Likes: en tus posts y en los de cualquier otro usuario, desde su perfil.
  • Sacar el like: un segundo clic lo quita.
  • Un like por usuario: el contador se actualiza al instante y no hay likes duplicados.
  • Comentarios. Es lo próximo.

Editar un post

Cada post tuyo tiene ahora una opción de editar. Abre un formulario que ya viene completo con el contenido actual del post, así que no tenés que escribirlo de nuevo: cambiás lo que haga falta, guardás, y el post se actualiza al instante.

Borrar un post

Justo al lado de editar está la opción de borrar. Antes de hacer nada, pide confirmación, porque borrar un post es definitivo: una vez confirmado, el post desaparece para siempre.

Likes

Los likes ya funcionan bien. Podés darle like a tus propios posts o a los de cualquier otra persona desde su perfil, y un segundo clic lo saca. El contador se actualiza al instante, y cada usuario puede darle like a un post una sola vez: no hay likes duplicados.

Stack

El mismo que en el primer devlog:

CapaTecnologías
FrontendReact, React Router, React Query, CSS Modules
BackendExpress, PostgreSQL (en Neon)

Lo que viene

En el próximo devlog voy a trabajar en los comentarios: que los usuarios puedan comentar posts, y también editar y borrar sus comentarios si hace falta.


Dónde seguir el proyecto

Este proyecto se hizo con React y Tailwind.

© 2023 Pablo Pérez. Todos los derechos reservados.