MusicGazer

Se trata de una aplicación web cuya funcionalidad principal es la de mostrar cuáles son las canciones más escuchadas de cualquier artista, permitiendo escucharlas. La información sobre las canciones se obtiene de Last.fm, la reproducción de éstas se realiza con Grooveshark y las gráficas de las estadísticas se generan con Google Chart API.

Tenemos también un sistema de comentarios, mediante el cual los usuarios pueden dejar su opinión sobre cada uno de los artistas buscados. También podemos ver cuáles son los artistas que más se han buscado con MusicGazer.

Todo está escrito en PHP y Javascript (con jQuery). Por otra parte, se utiliza una simple base de datos de archivos XML para guardar los comentarios y las búsquedas (se realizó así por exigencia de la asignatura para la que realicé el proyecto).

Se puede ver funcionando en el siguiente enlace:

http://musicgazer.codigo12.com

Funcionamiento

El usuario deberá introducir en el cuadro de búsqueda el artista en el que está interesado. Una vez realizada la búsqueda, aparecerá una imagen del artista o del grupo en cuestión, junto con un panel con dos pestañas.

  • En la primera se mostrarán cuáles son las canciones más escuchadas, el número de oyentes (en Last.fm) y una gráfica que representa esto último.
  • En la segunda aparecerá una breve biografía del artista o grupo, con posibilidad de ampliarla visitando un enlace externo.

Si en la primera pestaña pulsamos en el icono de Grooveshark que aparece al lado de cada canción, realizaremos una búsqueda del tema seleccionado en su base de datos (se utiliza la API de Tinysong para ello). Los resultados se mostrarán en un panel, donde podremos elegir la canción que queramos para su reproducción.

Para finalizar, el funcionamiento del sistema de comentarios es muy simple: para cada artista podremos introducir nuestras impresiones en el cuadro de texto que se encuentra bajo su imagen, y nuestro nombre o nick en el campo correspondiente. En cuanto pulsemos “Añadir comentario” veremos cómo se publica éste.

Recursos utilizados

Definición de la interacción cliente-servidor

El cliente realizará peticiones asíncronas a la API de Last.fm, la cual le devolverá la información sobre las canciones más escuchadas del artista elegido, además de una imagen de dicho artista. Desde el propio cliente también se llamará a Google Charts para generar la gráfica correspondiente. La interacción con el servidor vendrá de dos maneras:

  • Cuando se quiere reproducir una canción de las encontradas a partir de la API de Tinysong (Grooveshark). Se realizará la petición desde el CGI PHP mediante cURL, y éste devolverá el resultado (en JSON) al cliente para su representación.
  • Cuando se escribe un comentario, como se ha descrito anteriormente (XML).
  • Cada vez que se busca un artista, se suma 1 al número de visitas de éste, almacenado como se ha descrito anteriormente (XML).

Descarga del código fuente

MusicGazer está liberado bajo licencia GPLv3, y se puede descargar en el siguiente enlace:

musicgazer-1.0.tar

 

Aún no hay comentarios.
*
Aún no hay trackbacks.