Optimiza la carga de imágenes con técnicas avanzadas y gestión eficiente del estado, integrando bibliotecas populares y configuraciones personalizadas para el consumo de APIs.
- 📷 Carga diferida lazy loading: Mejora el rendimiento cargando solo imágenes en la vista.
- 🏗️ Diseño de masonry layout: Presenta múltiples imágenes de manera atractiva y organizada.
- 🖥️ Diseño responsive: El sitio web funciona correctamente en dispositivos de cualquier tamaño.
- 🔁 Desplazamiento infinito infinite scrolling: Permite cargar más contenido automáticamente.
- 🔄 Manejo del estado global: Usando Zustand, facilita la actualización y acceso a valores de búsqueda.
- 🖇️ Personalización de UI: Con Tailwind CSS, permite ajustes estilísticos específicos.
- 🛠️ Solicitudes HTTP a la API de Unsplash: Configura Axios para buscar imágenes.
- Tener configurado un entorno con
Node.jspara instalar las dependencias necesarias.
Tip
Bun es una alternativa moderna y eficiente a npm y yarn para la gestión de paquetes en proyectos javascript.
curl -fsSL https://bun.sh/install | bash- Abre tu terminal o línea de comandos.
- Navega hasta el directorio donde se encuentra el proyecto.
- Ejecuta el siguiente comando para instalar las dependencias.
bun installSi estás utilizando herramientas de gestión de paquetes como
yarnonpmsustituirlo porbun.
- Si tu gestor de paquetes es
yarnonpm, ajustar la configuración en el archivopackage.json.
"scripts": {
"dev": "vite",
"build": "tsc -b && vite build",
"lint": "eslint . --ext js,jsx,ts,tsx --report-unused-disable-directives --max-warnings 0",
"preview": "vite preview"
},- Crear el archivo
.env.
project-root
├─ src/
│ ├─ components/
│ │ ├─ Header.tsx
│ │ └─ Spinner.tsx
│ └─ config/
│ └─ axios.ts
/* │
==> ├─ .env
*/ │
├─ package.json
└─ vite.config.js- Dentro del archivo
.envdefinir las variables de entorno.
VITE_API_KEY_UNSPLASH=clave-api-key-yyy
VITE_SERVER_DOMAIN=https://api.dominio.com/- En el directorio donde se encuentra el proyecto ejecuta el siguiente comando para levantarlo.
- Si tu gestor de paquetes es
yarnonpmsustituirlo porbun.
bun dev