No tienes acceso a esta clase

隆Contin煤a aprendiendo! 脷nete y comienza a potenciar tu carrera

Desplegando el proyecto

22/26
Recursos

Aportes 190

Preguntas 63

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad?

Luego de varios intentos logre realizar una web de Ibai ya que fue lo 煤nico que se me vino a la mente e implemente algunos detalles y ese hermoso darkmode que me gusta ver siempre en las p谩ginas webs. 馃憠 https://alinpr18.github.io/async-landing/

"Nunca paremos de aprender"

Para que el la im谩gen del video redirija al video en youtube puse todo el div dentro del map sobre una etiqueta <a></a>:

<a href="https://youtube.com/watch?v=${video.id.videoId}" target="_blank">

馃枿锔 饾棖饾椆饾棶饾榾饾棽 #饾煭饾煹: 饾棗饾棽饾榾饾椊饾椆饾棽饾棿饾棶饾椈饾棻饾椉 饾棽饾椆 饾椊饾椏饾椉饾槅饾棽饾棸饾榿饾椉 馃枿锔
.
Debemos hacer la inserci贸n de content para tenerlo visualmente, justo antes de catch:

content.innerHTML = view; //innerHTML es igual a la vista que se ha creado e itera con el metodo map y devuelve un nuevo arreglo con los elementos que queremos obtener como el t铆tulo, la descripci贸n, la imagen miniatura de la API

Para el catch, se debe agregar la estructura (podemos editar la salida como queramos):

catch (error){
console.log(error); //en caso que de que haya un error el catch lo captura e imprime qu茅 tipo de error devolvi贸
}

Para conectar el index con el main, se agrega un script con la ra铆z del proyecto:

<script defer src="./assets/main.js"></script> <!--cuando 茅sto se ejecute en el navegador, va a leer el archivo main y asignar en memoria c/u de los elementos API, options (la l贸gica del c贸digo).-->

Es importante colocar la palabra defer:

  • Defer es un atributo booleano.

  • Solo debe usarse si hay un script externo que lo contenga src

  • El script se descarga en paralelo al an谩lisis de la p谩gina y se ejecuta tan pronto como est茅 disponible (antes de que se complete el an谩lisis).
    Fuente: aqu铆
    .

  • Se ejecuta el index.html con la extensi贸n Live Server y debe aparecer la landing con todos los elementos de forma correcta.

  • Con la herramienta Inspeccionar del navegador (dar click derecho a la p谩gina y buscar Inspeccionar), nos permite analizar cu谩les son los posibles errores arrojados por consola (Console) y si se selecciona la pesta帽a Network, se puede visualizar los servicios y conexiones a la API en vivo.

  • Una vez que estemos satisfechos con la landing, se procede a subir el c贸digo a un servidor, en 茅ste caso a Github.

  • Para el deploy se hace la implementaci贸n de Github pages (mostrar nuestro c贸digo html dentro del repositorio).

  • Vamos a consola para instalar el paquete con: npm install gh-pages --save-dev-

  • Agregar en el archivo package.json el script (editar el apartado 鈥渢est鈥):

"scripts": {
"deploy": "gh-pages -d src"
},

Se crea una nueva rama en el repositorio y se habilita para su publicaci贸n. Para ello primero se debe actualizar los cambios al repositorio antes del deploy, en consola para conocer el estado del se proyecto: git status

  • Para confirmar y comentar que hay nuevos archivos y cambios se coloca: git commit -m 鈥淸ADD] files鈥
  • Por 煤ltimo se hace el deploy con el comando: npm run deploy que ejecuta un comando de gh-pages para la subida de una rama y que luego se pueda mostrar como una p谩gina web.
  • -Para obtener la direcci贸n que arroja en Github con gh-pages, hay que entrar en la pesta帽a de Settings, en el panel izquierdo entrar a Pages, autom谩ticamente nos muestra la url para ver nuestra landing y compartirla a otros.

En esta clase del curso profesional de javascript explican como es que llega un script al navegador en el caso de defer se va a ejecutar Javascript hasta el final, es decir luego de que se cargue todo el documento.

Mi proyecto, consumiendo una API que me trae los siguientes 6 partidos de los LA Lakers https://juanr-yes.github.io/async-landing/

Quiero avisar que est谩 ca铆do el link para hacer el desaf铆o

Luego de haber pensado mucho decid铆 adaptar con esto una web tributo a Lovecraft que ten铆a guardada, los videos quedaron en la 煤ltima secci麓n con la opci贸n de ir a ellos directamente

Les comparto mi proyecto, use la API de spotify tambien y cambie algunas cosas del tailwind
https://juandiossa.github.io/async-landing/

No tengo videos en mi canal de YouTube as铆 que us茅 el canal de Platzi para esto. El curso me inspir贸 a crear mi API en un subdominio m铆o para no revelar el API Key 馃檪

馃憠 https://doulovera.github.io/async-js-app/

Para el reto, utilice la libreria que se llamam sweet alert es muy facil de usar, se las recomiendo, aqui les dejo el link https://sweetalert2.github.io/#examples

Realice un proyecto desde cero utilizando html, sass y js. El proyecto se basa en utilizar la API PokeApi para obtener de manera aleatoria un pokemon, mostrar sus imagenes y los detalles del mismo. Dejo el enlace al GitHub Pages
https://nicogoux.github.io/Find-your-pokemon-app/

Algo molesto de la metodologia del profe es que asi sea algo sencillo no lo explica asi sea por encima como el defer.

dejo una explicacion rapida

Es posible que la soluci贸n que te hayan sugerido sea utilizar el atributo "defer" en la etiqueta del script en el HTML. El atributo "defer" se utiliza para diferir la ejecuci贸n de un script hasta que se haya cargado completamente el documento HTML, lo que significa que el script se ejecutar谩 despu茅s de que se hayan construido los elementos HTML de la p谩gina web.

El error "Cannot set properties of null (setting 'innerHTML')" se produce cuando intentas establecer la propiedad "innerHTML" en un elemento que a煤n no ha sido creado en el DOM (Document Object Model). Si colocas el script que intenta acceder al elemento antes de que se haya creado el elemento en el HTML, se producir谩 este error.

Al utilizar el atributo "defer" en la etiqueta del script, le est谩s indicando al navegador que diferir谩 la ejecuci贸n del script hasta que se haya construido completamente la p谩gina web, lo que garantiza que los elementos HTML que se intentan acceder ya existan en el DOM.

Por ejemplo, puedes agregar el atributo "defer" en la etiqueta del script de esta manera:

php
Copy code
<script src="tu-archivo.js" defer></script>
De esta manera, el script se ejecutar谩 despu茅s de que se haya construido la p谩gina web y se hayan creado los elementos HTML que se intentan acceder, lo que evitar谩 el error "Cannot set properties of null (setting 'innerHTML')".

Gente aqu铆 les comparto mi proyecto! Soy barbero, pero tambi茅n estoy form谩ndome como desarrollador aqu铆 en platzi, as铆 que quise hacer mi landing page con tem谩tica de Barberia, Aqu铆 se las dejo:

https://carlosmlopez066.github.io/Landing-page/

馃敟 Fazt Web

Despu茅s de una semana de trabajo, logre terminar mi web inspirada en el canal de Fazt. Dejo enlace al c贸digo en GitHub donde podran encontrar el link a la web desplegada.

Dark mode

Light mode

Aqui dejo humildemente mi aporte, en mi caso, consumi la API de studio ghibli, la puedes encontrar aqui si deseas probar tu tambien!: https://ghibliapi.herokuapp.com/#section/Base-URL

y aqui esta el resultado de mi poryecto: https://sora-san-df.github.io/Project-CV/

y slgunas fotitos! c:

Hola! Aqu铆 les dejo mi versi贸n 1.0. Apliqu茅 el dark mode en Tildwindcss y capt茅 el v铆deo de YouTube que tengo en uno de mis canales. Mi reto es ahora usar la API de Pinterest para insertar mis proyectos.

隆Se logr贸 gente! 馃懢 Agregue un modo oscuro y logre que los videos se reproduzcan, para implementar el modo oscuro les recomiendo tomar el curso de Tailwind鉃★笍 [<u>https://platzi.com/cursos/tailwind/</u>](https://platzi.com/cursos/tailwind/) Sitio web 鉃★笍[<u>https://663c5f1ebab5d060196b88f0--lofi-channel.netlify.app/</u>](https://663c5f1ebab5d060196b88f0--lofi-channel.netlify.app/) Repo 鉃★笍[<u>https://github.com/Gianlucabernasconi/Lofi-Channel</u>](https://github.com/Gianlucabernasconi/Lofi-Channel) **Claro:** ![](https://ibb.co/kc3rMsV)![](https://i.ibb.co/ThKnrxD/Firefox-Screenshot-2024-05-10-T05-49-26-503-Z.png) ![](https://ibb.co/kc3rMsV)**Oscuro:** ![](https://i.ibb.co/mXyrsKx/Firefox-Screenshot-2024-05-10-T05-49-10-340-Z.png)
Aqu铆 mi proyecto, utilice la API de Youtube para mostrar unos videos en Coreano. <https://edithmanr.github.io/landing-with-async/> ![]()![](https://static.platzi.com/media/user_upload/Captura%20de%20Pantalla%202024-01-10%20a%20la%28s%29%201.46.10-cdaf4d71-811f-47f2-84a1-50fc92421a0b.jpg)

Hola compa帽eros, quer铆a compartirles la pagina que hice, en mi caso yo la hice haciendo uso de una librer铆a de js, la cual es react js, y lo hice conectado con una API de peliculas, la cual me permite obtener informacion de diferentes peliculas, asi como hacer filtros. Yo la subi a netlify, la url es: https://diego-gallery.netlify.app

comparto mi proyecto del curso:
https://liwgar.github.io/curso_asincro_js/

Hola como est谩n? Tengo un error a la hora de poner los videos de YouTube, no me aparecen y en la consola me aparece 鈥淐annot read properties of undefined (reading 鈥榤ap鈥)鈥 les dejo mi c贸digo por si me pueden ayudar. Gracias 馃槂

const API = 'https://youtube-v31.p.rapidapi.com/search?channelId=UCHAzisV9csGSEdXf3Wgkhmg&part=snippet%2Cid&order=date&maxResults=50'

const content = null || document.getElementById('content')

const options = {
	method: 'GET',
	headers: {
		'X-RapidAPI-Key': '36be455b77msh0447b8241cd0f50p162a6cjsna65ea125c0d9',
		'X-RapidAPI-Host': 'youtube-v31.p.rapidapi.com'
	}
};

async function fetchData(urlApi) {
    const response = await fetch(urlApi, options)
    const data = await response.json()
    return data
}

(async () => {
    try {
      const videos = await fetchData(API);
      let view = `
      ${videos.items.map(video => `
        <div class="group relative">
          <div
            class="w-full bg-gray-200 aspect-w-1 aspect-h-1 rounded-md overflow-hidden group-hover:opacity-75 lg:aspect-none">
            <img src="${video.snippet.thumbnails.high.url}" alt="${video.snippet.description}" class="w-full">
          </div>
          <div class="mt-4 flex justify-between">
            <h3 class="text-sm text-gray-700">
              <span aria-hidden="true" class="absolute inset-0"></span>
              ${video.snippet.title}
            </h3>
          </div>
        </div>
      `).slice(0, 4).join('')}
      `;
      content.innerHTML = view;
    } catch (error) {
      console.log(error);
      alert('ERROR')
    }
  })();

Mi comentario es que el c贸digo dado por GNDX los v铆deos no dirigen hac铆a el v铆deo.
Reto a que hagan las etiquetas que logra que se abra el v铆deo en una nueva pesta帽a.

O si se sientes osados. Implementen un reproductor sin salir de su landing async

Mi proyecto se lo dediqu茅 a un amigo divulgador de la flora y fauna de M茅xico.

Biologando con Miguel

la verdad yo no entendi casi nada, solo me doy una idea no se si soy yo, o a los cursos aveces les falta explicacion , enfin solo se que en un poco tipo aprendere bien asi como ya aprendi html css git github que igual se me hicieron dificiles

Hola, aprovech茅 para hacerle publicidad a mi pap谩, as铆 me qued贸 el proyecto.

https://ingeshare.github.io/async-landing/

Esta es la pagina

Exced铆 el l铆mite diario, pero me sirvi贸 para probar el mensaje de error.

Mi proyecto, para los que vamos al gym a luchar contra la ansiedad. https://coca-paiz.github.io/coca-s/

Aqu铆 est谩 mi landing 馃惐: https://jjat00.github.io/lofi-code-landing/

Us茅 la API de github para traer mis repositorios para el ejercicio! si lo quieres utilizar es el siguiente

const API = `https://api.github.com/users/${usuario}/repos`;

asi quedo el mio un poquito rapido pero super bueno.
https://shaggyt85.github.io/async_landpages/

Aqui mi proyecto 馃槂

Hola, modifique un poco la plantilla para agregar el Dark Mode y un poco de responsividad. Dejo la url: https://clmiranda.github.io/async-landing/

Hola esta es mi landing page la cual realice con React js
(Aun estoy en aprendizaje con este lenguaje). Espero les agrade
live: https://irumau.github.io/manga-landy/
repo: https://github.com/Irumau/manga-landy

Adicional a lo que sugiere el profe para implementar el diferido se puede cambiar la carga del script, en vez de ponerla en el head del archivo html se puede poner al final del mismo, justo antes de la etiqueta BODY, de esa forma el html va a estar ya cargado El uso de defer es similar a realizar la carga al final del archivo html y en caso de que el usuario utilice un navegador un poco mas viejo que no tenga la implementaci贸n de defer no tendr谩 problema en cargar la p谩gina correctamente \*recordemos que si un navegador no tiene una implementaci贸n de javascript no ejecutar谩 nada y seguir谩 sin mostrar)

Costo un poquito trabajar con la api porque en vez del canal, elegi una playlist. Y no use el template que proporciono sino otro que cuenta con bootstrap.
Les dejo el link:
https://batman-api.netlify.app/

Yo hice el landing de Te lo resumo.
Lo pueden ver aqu铆:
https://jorgeromero17.github.io/landing-teloresumo/

hola buenas tardes me aparece esto en la cponsola alguien me podria ayudar

Mi landing page enlazada con mi canal de youtube. Reto culminado 馃槂 : https://diegomp34.github.io/async-landingpage/

Hola comunidad!! yo hice mi landing page basado en un personaje de Marvel!! Black Panther鈥

https://tavodlhoz.github.io/tavodlhoz-landing/

Aca dejo mi dise帽o

Buenas el repositorio esta dando un 404 , nose si hay que pedir algun permiso o que, pero aca dejo mi proyectito.
https://facuzogbe.github.io/async-landing/#acerca-de-mi

Hola les comparte mi landing page tengo pensado hacer mas cosas por si ven otros apartados en la pagina utilice la
api jikan
repositorio
pagina

Aca les dejo mi pagina inspirada en el crack de BZRP. https://josmanjimenez.github.io/BZRP-land-page/ .

Este es mi aporte algo sencillo espero les guste.

隆Hola! Aqu铆 les dejo mi landing project. 隆Saludos desde Colombia! https://vegadelalyra.github.io/asyncLanding/

Les comparto mi proyecto:

https://jonathan-debugger.github.io/async-landing/
Le a帽adi una api de visualizacion basica de instagram

Pasos para subir los files de vscode a github

  1. git add .
  2. git commit -m 鈥渄escribe aqu铆 tu commit鈥
  3. git push -u origin main

Clase 22 - Desplegando el proyecto

Antes de desplegar nuestro proyecto hay que:

  1. Vincular nuestro archivo main.js al index.html, pero tambien debemos agregarle el atributo defer al vinculo, quedando as铆: <script defer src="./assets/main.js"></script>.

    <aside>
    馃搶 El atributo聽defer聽indica al navegador que no espere por el script. En lugar de ello, debe seguir procesando el HTML, construir el DOM. El script carga 鈥渆n segundo plano鈥 y se ejecuta cuando el DOM esta completo.
    Esto evita que, en el c贸dido main.js, tengamos un error al llamar el elemento content. Ya que al descargarse antes que el DOM, estar铆amos haciendo un llamado a un elemento que no existe.

    </aside>

  2. Agregar la implementaci贸n gh-page a nuestro proyecto.

    1. Instalaci贸n:

      npm install gh-pages --save-dev

    2. Configuraci贸n de package.json agregando el script.

      "scripts": {
          "deploy": "gh-pages -d src"
       }
      

      <aside>
      馃搶 Este script sirve para realizar el deploy a github pages desde la carpeta src, la cual contiene el c贸digo fuente.
      Si src tuviera otro nombre, deber铆a indicar el nombre correcto de la carpeta.

      </aside>

    3. Deploy:

      Una vez agregado todos los archivos al repo, solo queda hacer el deploy ejecutando el comando:

      npm run deploy

      Esto crea una rama llamada gh-pages el cual ya cumple con el standar de github pages y mostrarla como una p谩gina web.

#Hola, Comunidad.

Les comparto mi proyecto: https://juancodev.github.io/landing-page-js/

Hola a todos, I need help:

.

.
nose poruqe no se muestran los resultados:

.
Aqui les dejo el JS:

.
Aqui el link de la API: https://rapidapi.com/everyday/api/ai10/
.
Espero super atentamente sus ayudas.

inentendible

Mi aporte con la api de youtube a la fecha de agosto 2022

const API = "https://youtube138.p.rapidapi.com/channel/videos/?id=UCJ5v_MCY6GNUBTO8-D3XoAg&hl=en&gl=US";

const content = null || document.getElementById("content")
console.log(content)

const options = {
    method: 'GET',
    headers: {
        'X-RapidAPI-Key': '5d3d60551bmsh1398382c8325a84p10b8a8jsn17a4115e4a40',
        'X-RapidAPI-Host': 'youtube138.p.rapidapi.com'
    }
};

async function fetchData(urlApi) {
    const response = await fetch(urlApi, options)
    const data = await response.json()
    return data;
}

(async () => {
    try {
        const videos = await fetchData(API)
        let view = `      
      ${videos.contents.map(video => `
      <div class="group relative">
        <div
                class="w-full bg-gray-200 aspect-w-1 aspect-h-1 rounded-md overflow-hidden group-hover:opacity-75 lg:aspect-none">
          <img src="${video.video.thumbnails[0].url}" alt="1" class="w-full">
        </div>
        <div class="mt-4 flex justify-between">
          <h3 class="text-sm text-gray-700">
            <span aria-hidden="true" class="absolute inset-0"></span>
            ${video.video.title}
          </h3>
        </div>
      </div>
      `).slice(0,4).join('')}
`;
        content.innerHTML = view
    } catch (error) {
        console.log(error)

    }

})();

Una observaci贸n, RapidAPI escanea la web verificando si los headers, que viene siendo:

const options = {
	method: 'GET',
	headers: {
		'X-RapidAPI-Key': 'numerosaleatoriosotorgadosporrapidapi',
		'X-RapidAPI-Host': 'host-de-la-api-en-cuestion'
	}
};

Seguramente les llegue un email notificando que esta informaci贸n esta publica en internet, lo mejor ser铆a crear variables de entorno, pero esto tendr铆a un problema en GitHub Pages, tocar铆a publicar en otro sitio que permita esta integraci贸n de variables de entorno, como por ejemplo Heroku.

no se encuentra el repositorio de showcase, me imagino que estan implemaentado algunas cosas ya que este curso es relativamenete nuevo y la fake api tambiem鈥 espero por estos dias algun profe publique el repo鈥

Estoy utilizando los videos de mi banda, Contrafuerza. Los invito a completar el reto y o铆r nuestra m煤sica

No tengo canal de YT, as铆 que decid铆 usar una api del clima porque hace mucho calor:.

Falta algo de CSS y a lo mejor unos cuantos iconos, pero la idea e interpretaci贸n de la API est谩 bien.

Saludos.

<https://alirodriguez067.github.io/async-landing/src/>
Hice una landing con mis proyectos m谩s recientes de GitHub :p, incluye loader y error en caso de que no cargue la API <https://hieloelemental.github.io/Asincronismo-JavaScript-Platzi/> ![](https://static.platzi.com/media/user_upload/image-131f0c35-b71b-4c4b-a46e-53043f464b4e.jpg)
[criswa7.github.io/async-landing/](https://criswa7.github.io/async-landing/) c:
[Vanilla Landing (fabroche.github.io)](https://fabroche.github.io/landing-vanilla/)
Profe quisiera subir mi proyecto a esa web pero no encuentro la forma, alguien podria ayudarme.
<https://axelbau19.github.io/api-Pokemon/> Hice una pokedex propia donde muestra la informacion de un pokemon ![](https://static.platzi.com/media/user_upload/image-f5251375-16ea-4f4f-9dce-6938b388d7c2.jpg)
<https://axelbau19.github.io/api-Pokemon/> Hice una pokedex propia donde muestra la informacion de un pokemon
![](https://static.platzi.com/media/user_upload/image-243a37b6-084b-496c-a875-22336a1f491b.jpg)![](https://static.platzi.com/media/user_upload/image-1e42d586-cf6a-416c-9812-16cb7932e526.jpg)
No me permite hacer el deploy correcto en Github Pages
Decid铆 ir por un dise帽o propio, m谩s simple, con css de toda la vida, y como challenge me propuse tener cards para cargar tambi茅n los 煤ltimos videos de mis amigos (que la informaci贸n como las pfp tambi茅n se cargan por API). Lo hice directamente con la API de YouTube V3, obteniendo una API Key para imponerme el leer toda la documentaci贸n y tener que armar las peticiones por mi cuenta. El dise帽o lo dej茅 simple para poder darle foco la parte del consumo de API, y como lo estoy haciendo con HTML directamente sin frameworks ni librer铆as, tampoco quise ir muy a fondo con funcionalidades extra como agregar m谩s canales, explorar m谩s videos o generar vistas exclusivas para mostrar las distintas cosas. ![](https://static.platzi.com/media/user_upload/YouSpot-7e8dce32-8d3f-4dad-966d-6aa3ab4581b3.jpg)

Espero en el futuro poder mejorar el proyecto.
Github Mi repo
Netlify Live site

Luego de varias ocasiones practica error, practica error 驴, este ha sido el resultado

Les comparto mi sitio: <https://dr1602.github.io/sitio-asincronismo/> ![](https://static.platzi.com/media/user_upload/image-def0fcb4-d9e1-472d-b21f-d319b7f60936.jpg)
![](https://static.platzi.com/media/user_upload/imagen-917033bd-2046-4c62-a3bd-cc8f1c307e4c.jpg)![]()![](https://static.platzi.com/media/user_upload/imagen-2a6301ef-b53d-4275-aefb-6351fa3167fb.jpg)```js https://wfrm.github.io/landingPlatzi/ ```
<https://wfrm.github.io/landingPlatzi/>
```js async function fetchData(urlApi){ const response=await fetch(urlApi,options); const data=await response.json(); return data; } (async()=>{ try{ const videos = await fetchData(API); console.log(videos); let view=` ${videos.data.map(video=>`

${video.title}

`).slice(0,4).join('') }`; content.innerHTML=view; }catch(error){ console.log(error); }})(); ```
Comparto mi link de GitHubhttps://billyagr.github.io/async-landing/ ![](https://static.platzi.com/media/user_upload/image-fe9161a1-761e-474c-b105-4338883a7442.jpg)
![]()Para darle un toque personal a mi proyecto, opt茅 por incorporar la API de RAWG que se encontraba en rapidapi, es una base de datos de videojuegos. Despues de batallar al principio con comprender esta API y el como usar su informaci贸n este fue el resultado: <https://jeyg20.github.io/game-api-landing-page/> ![](file:///C:/Users/jei_s/Pictures/Games-api-landing-page.pngfile:///C:/Users/jei_s/Pictures/Games-api-landing-page.png)![](https://www.dropbox.com/scl/fi/cbwmdoai29bsu339elutd/Games-api-landing-page.png?rlkey=l46cn87y8ytj5rk2d0nmojjiv\&dl=0)
<https://erikred.github.io/async-landing/>
Les comparto, lo hice sobre mi canal de YT [dtoro-dev.github.io/async-landing-airsoft/](https://dtoro-dev.github.io/async-landing-airsoft/)

Luego de 6 horas, lo logr茅: este es mi proyecto :鈥)

Buena suerte mochachos, el camino es duro pero el final es bello 馃槃

馃 Preview

Normalmente suelo usar Netlify y vercel para hacer esos despliegues

Hola muchachos. Me puse a jugar un poco con el poligino y los colores y esto fue el resultado. ademas agregue links funcionales a los videos de mi canal (no pude solucionar los links inexistentes a las listas de reproduccion).

https://lufebadeca.github.io/async-landing/

馃棐 asyncanime

Lista de los top anime de todos los tiempos

.
馃 Cosas que utilic茅:

Mi proyecto, Una landing page de Taylor Swift https://jsalegria16.github.io/landing-page-asyncjs/src/.

  • Us茅 la API de Spotify para obtener los 谩lbunes y los singles

Esta es mi proyecto, es sobre el mejor rapero de latinoamerica: Canserbero

Pues ya鈥 aunque la verdad no s茅 qu茅 aprend铆 del curso鈥