Crea SPAs con C# en el Back-End usando Blazor Server 

Introduccion:  Blazor es un framework que permite desarrollar aplicaciones web interactivas utilizando C# y .NET, en lugar de depender solo de JavaScript. Se basa en WebAssembly y ofrece una experiencia similar a frameworks como Angular o React, pero completamente integrado con el ecosistema .NET.  ¿Por qué usar Blazor? - Permite reutilizar lógica de negocio entre el backend y el frontend - Usa C# en lugar de JavaScript para la lógica de la UI - Integración fluida con ASP.NET Core - Soporta componentes reutilizables - Ofrece dos modelos de ejecución:  Blazor Server: Renderiza en el servidor y mantiene la…continue reading →

Google OAuth 2.0 en ASP.NET Core

En este post veremos cómo integrar Google OAuth 2.0 en una aplicación ASP.NET Core MVC. La idea es permitir que los usuarios inicien sesión utilizando sus cuentas de Google, lo que simplifica la autenticación, mejora la experiencia de usuario y reduce la necesidad de gestionar contraseñas propias. A continuación, te presento una guía paso a paso, conceptos clave y algunas preguntas frecuentes. ¿Qué es OAuth 2.0? OAuth 2.0 es un protocolo de autorización que permite a las aplicaciones acceder a recursos protegidos sin necesidad de que el usuario comparta sus credenciales. En lugar…continue reading →

Creación de un Avatar de usuario automático en ASP.NET Core MVC

https://www.youtube.com/watch?v=Ow6hqKKBRU0 Introducción ¿Alguna vez has necesitado implementar un sistema de avatares para los usuarios de tu aplicación web, pero no quieres depender de servicios externos o requerir que tus usuarios suban sus propias imágenes? Una solución elegante es generar avatares dinámicamente basados en las iniciales del usuario y un color de fondo personalizado. En muchas aplicaciones modernas, los avatares son un elemento visual importante que ayuda a identificar a los usuarios. Sin embargo, no todos los usuarios cargan una foto de perfil, lo que puede resultar en una experiencia visual inconsistente. ¿Por qué…continue reading →

Crea tu propio Spotify Wrapper

En este post aprenderemos cómo crear un producto basado en una API pública y algunos de los riesgos que conlleva a nivel de negocio. En concreto veremos dos tipo de autentificación para el consumo de la API, client credentials y OAuth PKCE: para ello construiremos, una barra de búsqueda de la lista de álbums del artista seleccionado con react-vite, y un Spotify Wrapper personalizado con vainilla js. Este post se basaba en una red social musical https://github.com/spariva/Music-Life que hice como TFG, donde podías crear playlists añadiendo parámetros personalizados, afinando así el algoritmo de…continue reading →

La librería RxJS: Reactive Extensions for JavaScript

El Problema En el desarrollo de aplicaciones web modernas, uno de los mayores retos es manejar flujos de datos en tiempo real, como puede ser una aplicación de mensajería instantánea, eventos de usuario, actualizaciones de una API... Con el uso tradicional de promesas anidadas, callbacks, estados múltiples, la complejidad del código aumenta de forma no sostenible. Es por esto que se utiliza la librería RxJS (Reactive Extensions for JavaScript). Puntos Importantes ¿Qué es RxJS?: RxJS es una librería que implementa el paradigma de programación reactiva en JavaScript. Permite trabajar con observables, que son…continue reading →

🌏Cómo internacionalizar un proyecto + práctica

La internacionalización, conocida también como i18n, es una práctica esencial para los desarrolladores que quieren que sus aplicaciones sean accesibles a nivel global. Pero, ¿qué significa exactamente i18n y cómo se puede implementar de forma efectiva? 1. ¿Qué es i18n? i18n es una abreviatura para "internacionalización", donde el "18" representa el número de letras entre la primera "i" y la última "n". Esta práctica es importante ya que permite que la aplicación sea accesible en diferentes mercados, mejora la experiencia del usuario al respetar idiomas, formatos de fechas, monedas... y es clave para…continue reading →