Lalabase
Tickets, Doku, Zeiterfassung und Kundengespräche an einem Ort, durchsuchbar per KI. Für Softwarefirmen mit Kundenprojekten. Open Source: auf deinem eigenen Server oder in unserer Cloud in Deutschland.
Translation pending
Sistema integral de gestión comercial, ventas e inventario para Café de mi Tierra. Control de pedidos, clientes, productos y finanzas en tiempo real.
Translation pending
BusinessTypeScript · PLpgSQLGitHub @carlosad2010OnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Repositorio para desarrollos para la marca Café de mi Tierra
Translation pending
Taken from the repository README
Loading the full README. The saved excerpt is shown below.
Café de mi Tierra — Panel Administrativo Sistema administrativo interno para la gestión operativa y financiera de Café de mi Tierra: ventas, facturación, inventario, cuentas por cobrar, comisiones de vendedores e informes gerenciales. Sistema en producción con datos reales. Los cambios de esquema en Supabase se ejecutan manualmente y con cuidado — ver Base de datos. • Next.js 16 (App Router) + React 19 + TypeScript • Supabase — Postgres, Auth y RLS como backend • Tailwind CSS 4 • Recharts para gráficos, ExcelJS para informes descargables, Resend para envío de facturas por correoRead the full README ↗
Sistema administrativo interno para la gestión operativa y financiera de Café de mi Tierra: ventas, facturación, inventario, cuentas por cobrar, comisiones de vendedores e informes gerenciales.
Sistema en producción con datos reales. Los cambios de esquema en Supabase se ejecutan manualmente y con cuidado — ver Base de datos.
npm install
cp .env.local.example .env.local # completar con las credenciales de Supabase/Resend
npm run dev
Abrir http://localhost:3000.
| Variable | Uso |
|---|---|
NEXT_PUBLIC_SUPABASE_URL | URL del proyecto Supabase |
NEXT_PUBLIC_SUPABASE_ANON_KEY | Cliente público (respeta RLS) |
SUPABASE_SERVICE_ROLE_KEY | Solo server-side; usada en rutas API que necesitan bypass de RLS |
RESEND_API_KEY | Envío de facturas por correo |
NEXT_PUBLIC_APP_URL | Base URL de la app (links en correos, callbacks de auth) |
Todo el panel vive bajo app/(dashboard)/, protegido por sesión de Supabase Auth:
| Módulo | Descripción |
|---|---|
dashboard | Vista general del negocio |
pedidos | Registro y consulta de pedidos, con filtro por rango de fechas |
facturas | Facturación y envío por correo (Resend) |
clientes | Gestión de clientes |
productos | Catálogo de productos |
inventario | Movimientos de stock |
compras | Registro de compras a proveedores |
cajas | Control de caja y movimientos |
cuentas-cobrar | Cartera de clientes, pagos parciales |
comisiones | Liquidación de comisiones de vendedores (ver detalle abajo) |
informes | Reportes con rango de fechas personalizado y desempeño por vendedor |
configuracion | Administración de catálogos (presentaciones, tipos de producto, tarifas) |
usuarios | Gestión de usuarios y roles |
profiles.role es uno de: admin, seller, consulta. El rol consulta es de
solo lectura (ver lib/perfil-context.tsx); las políticas RLS en Supabase son la
fuente de verdad de los permisos, no el cliente.
Modelo clave del sistema, documentado aquí porque no es obvio desde el código:
presentations.comision guarda la tarifa vigente, editable en
Configuración › Presentaciones.order_items.comision_unitaria guarda la comisión congelada al momento de
la venta — un trigger en Postgres (supabase/comisiones_trigger_congelar.sql)
la copia desde presentations en cada INSERT.NULL y 0 significan cosas distintas: NULL es "sin tarifa definida" (se
reporta como advertencia y liquida en $0 sin estimar nada); 0 es "definida,
no paga comisión".app/api/comisiones/route.ts) con
hoja de detalle, resumen por vendedor y tarifas vigentes.El esquema completo y las migraciones incrementales viven en supabase/:
schema.sql — esquema base (tablas, RLS, funciones)No hay un runner de migraciones automatizado: cada script se revisa y se ejecuta a mano contra la base de producción.
npm run dev # servidor de desarrollo
npm run build # build de producción
npm run start # servidor de producción
npm run lint # eslint
Optimizado para Vercel, pero cualquier plataforma con soporte para Next.js 16 funciona. Recordar configurar las mismas variables de entorno en el entorno de despliegue.