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.
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.
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 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 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 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;
}
} 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.