尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證MVP de Venduo: tienda online con Next.js 15, Supabase e IA.
翻譯準備中
取自儲存庫 README
正在載入完整 README。 以下為已儲存的摘錄。
Scaffold de tienda online: toda la infraestructura montada (Supabase, capa de IA intercambiable, QR, validación con zod) y solo el login como vista. Frontend y backend en un solo repositorio. Abrí. Funciona sin configurar nada. Sin credenciales el proyecto corre en _modo demo_: el middleware deja pasar y la capa de IA usa un proveedor simulado que genera respuestas válidas contra los mismos esquemas zod. Sirve para levantar el proyecto antes de conectar servicios. Para preparar el archivo de entorno de una:檢視完整 README ↗
Venduo es una plataforma que genera tiendas online para emprendedores que venden por TikTok, Instagram, Facebook y WhatsApp. Quien vende por redes no necesita "una página web": necesita dejar de responder "¿precio?" varias veces al día, no vender lo que ya no tiene y dejar de perder pedidos entre mensajes.
Con Venduo, el emprendedor:
Proyecto nacido en una hackathon de 48 horas, pensado para Bolivia.
| Módulo | Qué hace |
|---|---|
| 🛍️ Generador de tiendas | Alta en tres pasos: plantilla, datos del negocio y tienda publicada con URL propia (/t/{slug}) y QR |
| 🎨 Editor visual con IA | Seis pasos con vista previa real: marca, portada, catálogo, ficha de producto, carrito y publicar. Arrastrar secciones, deshacer, versiones |
| 🤖 La IA edita por bloques | Se le pide en palabras ("ponla en tonos de verano") y devuelve operaciones que el sistema valida antes de mostrarlas |
| 📦 Productos y stock | Fotos, stock con umbral de aviso, categorías, precio anterior para descuentos y productos destacados |
| 🧾 Pedidos por WhatsApp | El carrito se manda al WhatsApp de la tienda con su número y su total; en el panel se marca pagado y el stock baja solo |
| 📊 Estadísticas en lenguaje natural | "¿Qué producto se vende más este mes?" → la IA arma la consulta y la respuesta llega como gráfico, con informe descargable en PDF |
| 📄 Catálogos en PDF | Doce plantillas, packs y ofertas, con los colores de la tienda. Se descargan, se comparten por enlace o se siguen editando en Canva |
| Capa | Tecnología |
|---|---|
| Lenguajes | TypeScript (TSX), SQL / PL/pgSQL, CSS |
| Framework | Next.js 15 con App Router, React 19 y Server Components / Server Actions |
| Base de datos | Supabase: PostgreSQL con Row Level Security, funciones y disparadores |
| Autenticación | Supabase Auth (correo y contraseña) |
| Archivos | Supabase Storage (fotos de productos, imágenes de la tienda) |
| Estilos | Tailwind CSS v4 y componentes de shadcn/ui sobre Radix |
| Inteligencia artificial | Capa propia con proveedor intercambiable: Anthropic Claude, Google Gemini, cualquier API compatible con OpenAI, o un modo simulado |
| Validación | zod en todos los límites: formularios, entorno y respuestas de la IA |
| Formularios | react-hook-form |
| @react-pdf/renderer y sharp, generados en el servidor | |
| Arrastrar y soltar | @dnd-kit (funciona con el dedo y el teclado) |
| Gráficos | SVG dibujado a mano, sin biblioteca |
| Otros | qrcode, sonner (avisos), lucide-react (íconos), date-fns |
| Hosting y CI | Vercel (región São Paulo) y GitHub Actions |
Comprador ─▶ /t/{slug} ─┬─▶ Next.js (Server Components) ─▶ Supabase (PostgreSQL + RLS)
Emprendedor ─▶ /panel ──┘ │
▲ └─▶ Capa de IA ─▶ Claude · Gemini · OpenAI · mock
└──────── el pedido llega por WhatsApp ◀── carrito del comprador
Algunas decisiones que vale la pena conocer:
store_id y
Postgres impone el aislamiento: una tienda por emprendedor, y ninguna ve los datos de
otra.create_order) que recalcula los precios y comprueba el stock; el mensaje de WhatsApp
se arma con lo que ella devuelve.app/ Rutas de Next.js
page.tsx Portada pública
t/[slug]/ Tienda pública: portada, catálogo, producto y carrito
crear/ Alta de la tienda (el generador), con su WhatsApp
editor/ Editor visual de la tienda, a pantalla completa
(privado)/panel/ Panel del emprendedor: productos, pedidos, estadísticas,
apariencia y catálogos
c/[token]/ Catálogo en PDF compartido por enlace
components/ Componentes de React por área (tienda, editor, panel, catálogos…)
plantillas/ Un kit de componentes por plantilla de tienda
ui/ shadcn/ui
lib/ Lógica sin interfaz
ai/ Capa de IA: proveedores, tareas y esquemas
supabase/ Clientes de navegador, servidor y administración
data/ Consultas de lectura
plantillas/ Tokens, bloques y operaciones del editor
catalogos/ Modelo y generación de los catálogos en PDF
insights/ Estadísticas en lenguaje natural
supabase/migrations/ Esquema SQL: tablas, políticas RLS, funciones y disparadores
types/ Tipos generados de la base y alias
docs/ Documentación técnica
Requiere Node.js 20.9 o superior.
npm install
npm run dev
Y abre http://localhost:3000.
Funciona sin configurar nada. Sin credenciales el proyecto arranca en modo demo: datos de ejemplo y una IA simulada que responde con el mismo formato que la real.
Para conectar los servicios reales:
npm run setup # crea .env.local desde .env.example y dice qué falta
npx supabase link --project-ref <ref> y npm run db:push.AI_PROVIDER (anthropic, google, openai-compatible o mock),
AI_MODEL y AI_API_KEY. Cambiar de proveedor es cambiar el entorno, no el código.| Comando | Qué hace |
|---|---|
npm run dev | Servidor de desarrollo con Turbopack |
npm run build | Build de producción |
npm start | Sirve el build |
npm run check | Tipos, lint y formato en secuencia (lo mismo que CI) |
npm run format | Formatea con Prettier |
npm run db:push | Aplica las migraciones a Supabase |
npm run db:types | Regenera los tipos de la base |
npm run marca | Regenera los archivos del logo |
| Funcionalidad | Estado |
|---|---|
| Registro e ingreso | ✅ |
| Generación de la tienda desde una plantilla del rubro | ✅ |
| Editor visual de la tienda asistido por IA | ✅ |
| Tienda pública con URL propia, navegable en el celular | ✅ |
| Productos con fotos, stock, categorías y ofertas | ✅ |
| Carrito que manda el pedido por WhatsApp, sin datos | ✅ |
| Pedidos en el panel, con stock que baja al pagar | ✅ |
| Estadísticas en lenguaje natural con informe en PDF | ✅ |
| Catálogos en PDF con doce plantillas y Canva | ✅ |
| Copys de marketing con IA y publicación en redes | ❌ |
✅ hecho · ❌ pendiente. El detalle está en
docs/estado-del-proyecto.md.
| Archivo | Qué contiene |
|---|---|
VENDUO.md | La especificación del producto: problema, modelo y datos |
DESIGN.md | El sistema visual de Venduo |
docs/estado-del-proyecto.md | Qué está hecho y qué falta |
docs/store-templates.md | Cómo funcionan las plantillas de tienda |
docs/catalogos-pdf.md | Cómo se arman los catálogos en PDF |
CLAUDE.md y AGENTS.md | Reglas del proyecto para agentes de código |