Skip to content

frandivCode/e-commerce

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Altos Tragos | E-commerce

Tienda de bebidas y herramientas de bar.

LINKS:


Curso: React JS - CoderHouse - Comisión 60045

  • Alumno: Francisco Zapata.
  • Profesora: Laura Gonzalez Martin.
  • Tutor Adjunto: Sergio López Rey.

Important

Herramientas Utilizadas:

  • Jsx - React Js
  • React-Router-Dom => Para gestionar la navegación de las rutas de la webApp.
  • Hooks - Algunos usados: useState, useParams, useContext, useEffect.
  • Uso de Props
  • CSS - Para dar los estilos a la Single Page Application.
  • HTML - Uso de forma mínima en el index y en las etiquetas semánticas junto a la escritura en jsx.
  • JavaScript - Para la lógica de la aplicación escrito como jsx.
  • Netlify - Como alojamiento y desplegamiento de la Web.
  • Firebase - Para guardar las órdenes de compra con la info de los usuarios, y la subida de los productos.
  • Toastify - Uso de librería para el aviso con alerta de "producto agregado".

image image image image image image


Note

Proyecto Final -> 100%

  • Directorio src/ con la carpeta assets/ con las imágenes de íconos y de productos, carpeta de components/ , context/ , firebase/ ,stylesheets/ y las views/. También archivos principales para la iniciar la app (main.jsx, App.jsx e Index.html).

  • Carpeta principal con la documentación, como este mismo Readme.md, y archivos de configuraciones.

  • CartContext => uso de useContext/Provider para poder usar las funciones en los componentes hijos.

Components/

  • Header -> Con el nombre del e-commerce (con link al Home '/').

  • Navbar -> Con categorías y el CartWidget.

  • CartWidget -> el número se desmonta dependiendo si hay o no productos en él. Usé un icon importando un script para poder darle uso.

  • CheckOut

    • CheckOut / Brief -> detalle de compra ya finalizada con los datos del usuario y generación de la orden que queda guardada en Firebase, borrado del carrito automático y botón para volver al Home.

    • UserInfo -> con el fomulario para generar la orden que se guarda en Firebase, con validaciones de los inputs.

    • Carrito -> detalle de cada ítem en la vista del carrito con renderizado condicional, botones para incrementar o decrementar la cantidad del producto basandose en el stockDisponible. Nombre del producto, img, cantidad (+) y (-), precio unitario y total, también incluye la opción de eliminar el producto con la (X) y vaciar el carrito.

  • Catálogo -> de productos, separados por categorías y a su vez, vista de todos los productos en el Home ('/'), cada categoría con sus rutas con React-Router-Dom(rutas en App.jsx / NavBar.jsx).

  • ItemListContainer -> contenedor de todas las Cards con sus datos.

    • ItemList -> Diseño de la card del producto.

    • ItemDetailContainer -> Es el que recibe el producto en detalle una vez clickeado la card.

    • ItemDetail

      • ItemCount => ContadorComp, para incrementar {handleSumar} o decrementar {handleRestar} la cantidad, y un botón para agregar el producto al carrito {handleAgregar}.
      • Descripcion + precio + stock (con funcion para que vaya bajando la cant de stock).
  • Carrousel (extra) -> Para mostrar las marcas de bebidas que tenemos.

  • TextSlider (extra) -> Textos descriptivos que llaman la atención del cliente para resumir la page.

  • Footer -> Para darle la finalización a la página, con las categorias y el link de mi github.


Note

Pre-Entrega 2 => 100%

  • Uso de React-router-dom.
  • Se crearon las cards de los productos con su contador.
  • Componente Navbar con cart y diferentes caterogías de productos.
  • Home con las cards de todos los productos y Logo con link al home con path='/'
  • Link al detalle de cada uno de los productos.
  • Integración con parámetros de async-mocks utilizando efects y hooks.

Note

Pre-Entrega 1 => 100%

  • Componente Header (extra) (Logo).
  • Componente NavBar (Enlaces con las categorias).
  • Componente CartWidget (con ícono y nº hardcodeado - dentro de NavBar).
  • Componente contenedor ItemListContainer.jsx con una prop greeting.
  • Componente Footer (extra).

Instalación de proyecto / Correr proyecto

O link para desplegar la Web:


¡Gracias por ver!

atte frandivCode.

About

E-commerce de bebidas y cocteleria.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published