brunodeangelis / aerolab-challenge-nuxt

Resolución del Aerolab/challenge usando Nuxt.js

Home Page:https://aerolab-challenge-nuxt.brunodeangelis.now.sh/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Ver el desafío acá.

Parte 1

  1. Diseño traducido a código usando TailwindCSS.

  2. Utilizando Nuxt.js:

    • ✅ Infinite scrolling.
    • ✅ Agregar/restar productos del carrito. No se pierde al hacer refresh.
    • ✅ Switcher de monedas (ARS, USD).
  3. API personalizada en el endpoint /api:

    • ✅ Agrega el precio en dólares por cada producto.
    • ✅ Sólo trae los productos que tienen como máximo 1 mes de antigüedad.
  4. ✅ Deploy app y API en Now.

Parte 2: Electric Boogaloo

UI

a) ✅ WEBP con fallback a JPG para navegadores que no lo soportan.

b) ✅ Uso de @nuxtjs/pwa para navegación offline.

JS

a) ❌ El equipo de infraestructura nos pidió que nuestro proxy cargue los productos desde https://challenge-api.aerolab.co/slow/products , pero como el nombre indica, anda lentísimo y nos arruina la performance de la API. Hay algo que puedas hacer en el proxy para que no nos afecte tanto? La verdad es que los productos no cambian súper seguido.

b) ❌ Por otra parte, la lista de categorías de https://challenge-api.aerolab.co/categories viene en una lista plana. Nos vendría muy bien a futuro tener un endpoint /category_tree a la API que devuelva las categorías en forma de árbol, tomando como referencia el siguiente formato:

{
  id: 1, name: 'Categoria', parent_id: null,
  subcategories: [{
    id: 25, name: 'Subcategoria', parent_id: 1,
    subcategories: [
      { id: 54, name: 'Sub-subcategoria' parent_id: 25 }
    ]
  }]
}

About

Resolución del Aerolab/challenge usando Nuxt.js

https://aerolab-challenge-nuxt.brunodeangelis.now.sh/

License:MIT License


Languages

Language:Vue 54.4%Language:JavaScript 42.4%Language:CSS 3.2%