Consumir Gravatar API con Kendo UI MVVM

Hola a todos, en esta entrada escribiré algo corto y simple. Lo que haremos hoy es consumir la JSON API de Gravatar para que partiendo del User Name poder sacar información del usuario. Si no sabes que es Gravatar, no sé que haces aquí 😛 (Es broma, lee un poco aquí). Es muy útil que las aplicaciones Web que regularmente uso usen Gravatar, con tan solo mi Email ya sacan mi foto de perfil y si es necesario mi biografía (todo depende de cuanto le digas a Gravatar).

El código lo subí a este fiddle. Trabajos de puro Javascript seguro los estaré subiendo a mi cuenta de Fiddle para que si lo usan, estén al pendiente.

HTML

Primero tendremos que agregar las librerías que vamos a usar, vamos a usar las mismas que el post pasado y tendremos la siguiente base:

Screen Shot 2015-05-02 at 8.45.39 PM

Y dentro de body agregaremos nuestra vista de MVVM:
Screen Shot 2015-05-02 at 8.48.06 PM

Lo que hay que explicar aquí son los bindings, el div#container tiene un binding que se casa con su estilo in-line y la propiedad css background-color. Esto porque Gravatar me puede dar el background color que el usuario tiene personalizado. Los demas bindings son como ya lo hemos visto antes, vinculos con propiedades de nuestro View Model. Es importante hablar del span que tiene el binding “text: getGravatarData”, aquí es un truquito para ejecutar una función de mi View Model cada cuando la propiedad gravatarName cambie en el input. En realidad este no mostrará nada. La cosa aquí es que cualquier binding que se ponga en el HTML se van a evaluar nuevamente cada vez que una propiedad cambie.

Javascript

Agregamos dentro del load function de jQuery que ya agregamos el siguiente código javascript:

Screen Shot 2015-05-02 at 8.52.29 PM

getGravatarData consume la api de Gravatar. El URL de la api de gravatar es http://en.gravatar.com/{userName}.json, pueden usar un REST client para probarlo y ver los datos que manda (o simplemente ponerlo en el navegador funciona). So, le concatenamos el user name al url para obtener la información del usuario que queremos, así de fácil.

La api nos regresa un hash MD5 del email del usuario, y lo necesitamos para obtener la imagen de perfil del tamaño que queramos. Por eso usamos el URL http://www.gravatar.com/avatar/{has-md5}?s={size}.

Y el resultado es como lo hemos visto en el fiddle que he subido.

Screen Shot 2015-05-02 at 8.57.28 PM Screen Shot 2015-05-02 at 8.58.49 PM

Saludos!

Anuncios

Listado de productos con diferentes templates – Kendo UI y Bootstrap

Buen día a todos, en esta entrada voy a hablar un poco más de front-end y el patrón de diseño MVVM que ya hemos visto un poco en entradas anteriores utilizando Kendo. Lo que vamos a hacer lo subí en este JSFiddle pero de igual forma ya lo pudieron ver en la imagen destacada de esta entrada.

Crearemos un listado de productos que se cargarán de forma dinámica utilizando Kendo UI MVVM con datos locales y estáticos para dejarlo de una forma simple. La parte interesante del post es que se utilizarán los templates de Kendo para poder intercambiar en tiempo de ejecución la forma en la que se ven los productos (o cualquier cosa) sin tener que hacer un esfuerzo grande y lo importante, sin tener que refrescar completamente la página.

El HTML

Para comenzar no vamos a utilizar ningún lenguaje de servidor (como NodeJS o MVC) y vamos a comenzar con los siguientes archivos (solo tres): Continuar leyendo “Listado de productos con diferentes templates – Kendo UI y Bootstrap”

Aplicaciones Web MVVM con Kendo UI y NodeJS (ft. bootstrap) – Parte 2

Buenas noches (o tardes?) a todos :D.

En esta ocasión seguiré con la ahora serie de posts de NodeJS y Kendo UI, ya que es continuación del post anterior te recomiendo que la leas antes de seguir en este.

Lo que busco hacer en esta entrada es seguir viendo como funciona MVVM incluyendo ahora operaciones clásicas “CRUD” utilizando la funcionalidad del Data Source de Kendo. Lo que haremos es siguiendo el mismo ejemplo de la entrada anterior el poder crear, leer, actualizar y eliminar elementos de nuestro listado realizando los requests HTTP necesarios. No usaremos bases de datos, tal vez lo extendamos después. También decidí incluir Bootstrap en este ejemplo y básicamente esta será la actualización de nuestro proyecto:

Screen Shot 2015-04-03 at 10.52.41 PM

Continuar leyendo “Aplicaciones Web MVVM con Kendo UI y NodeJS (ft. bootstrap) – Parte 2”

Aplicaciones Web MVVM con Kendo UI y NodeJS (y Jade)

En esta entrada hablaré un poco de lo que puede ofrecer Kendo UI en su versión Open Source para crear aplicaciones Web con el patrón MVVM, utilizando Node.js como lenguaje y Express como framework web. En entradas anteriores hablé sobre NodeJS y MongoDB pero bajo Windows y pre compilado con TypeScript. Ahora será diferente, lo haremos bajo ambiente Unix utilizando Atom como nuestro editor de texto y NodeJS puro sin pre compilar por TypeScript.

UPDATE:

Esto ya se convirtió en una serie de posts, te invito a que la sigas toda:

  1. Parte 1 (esta)
  2. Parte 2

Aquí ya voy a suponer que tienes NodeJS instalado en tu computadora, ya sea linux, mac o windows, el código y el proceso que se mostrará funcionará en cualquier plataforma.

Crear Proyecto Express

Como les comenté, utilizaremos Express JS para hacer este ejemplo, pero en realidad será puro Front-end y no importará el lenguaje.

Primero, utilizaremos el generador que contiene express, si no lo tienes, ve a la página de expressjs y aprende a instalarlo. Continuar leyendo “Aplicaciones Web MVVM con Kendo UI y NodeJS (y Jade)”