Del clone al storefront
en 1 día
Skeleton Next.js 15 consumiendo las 8 libs. Fork, configure 3 env vars, personalice logo + color - está al aire.
apps/storefront-template
Qué viene dentro
Todo lo que una tienda real necesita, listo para personalizar.
-
Home
Hero carousel + featured products + CTA
-
Listado con filtros facetados
Filtros por categoría, brand, precio, tag
-
Detalle de producto
Galería, variantes, precio por lista, add to cart
-
Carrito persistente
UUID + expiry, sync con Odoo cuando logueado
-
Wishlist completa
FAB, drawer, badge en header, sync logueado
-
Auth Supabase
Login email/contraseña + social, recuperación, perfil
-
Checkout completo
Direcciones, envíos, métodos de pago, NF-e
-
Dashboard cliente
Pedidos, descargas, direcciones, datos personales
Getting started
5 pasos del clone a la personalización.
- 1
Clone e instale
Fork el monorepo, instale dependencias con pnpm. Todo listo para typecheck y tests verdes.
git clone git@github.com:kmee/k-shop-libs.git cd k-shop-libs pnpm install pnpm typecheck # verde pnpm test # verde - 2
Configure el template
Edite .env.local con URLs de su Odoo, Elasticsearch y Supabase. Sin secreto, son 3 backends.
# Odoo / Shopinvader NEXT_PUBLIC_ODOO_BASE_URL=https://shop.example.com/shop # Elasticsearch (server-side) ELASTICSEARCH_URL=https://elastic.example.com ELASTICSEARCH_API_KEY=YOUR-KEY ELASTICSEARCH_PRODUCT_INDEX=products # Supabase NEXT_PUBLIC_SUPABASE_URL=https://YOUR.supabase.co NEXT_PUBLIC_SUPABASE_ANON_KEY=YOUR-ANON-KEY - 3
Suba el dev server
Hero carousel default, listado de featured products de su Elasticsearch, header con search/wishlist/cart, footer.
pnpm --filter storefront-template dev # -> http://localhost:3000 - 4
Personalice el branding
Logo, colores vía tokens HSL, footer. Toda la UI sigue automáticamente.
/* app/globals.css */ @import "@kmee/shop-ui/tokens.css"; @layer base { :root { --primary: 25 100% 50%; /* su color */ --primary-foreground: 0 0% 100%; --radius: 0.75rem; } } - 5
Personalice páginas y flujos
Sobrescriba páginas que necesite. Agregue nuevos componentes consumiendo los providers del shop-react.
// app/producto-customizado/page.tsx "use client" import { useCart } from "@kmee/shop-react" import { ProductCard } from "@kmee/shop-ui" export default function Page() { const { addToCart } = useCart() // ... }
Cuán profundo se puede personalizar
Del branding superficial al adapter customizado.
-
Branding visual
1 díaColores, fuente, radio, logo, footer. Sin tocar código TypeScript - solo CSS vars.
-
Contenido de las páginas
2-5 díasTextos, imágenes, banners del hero, links del footer, FAQ. JSX directo, fácil de modificar.
-
Nuevos flujos de checkout
1-4 semanasCotización B2B, aprobación por jerarquía, pago customizado. Componga con providers existentes.
-
Integración con gateway/ERP terceiro
1-3 semanasAdapter customizado enchufando como subclass de OdooHttpClient o ProductService.
¿Quiere un template white-label customizado?
KMEE entrega el template ya con su identidad visual, flujos B2B/B2C ajustados e integración con su Odoo. Lo recibe listo para deploy.