Javis OS
Javis OS는 기업가를 돕는 에이전시 AI로, 업무를 지원하고 함께 성장합니다
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기메이커가 쓴 소개는 위의 한 줄이 전부입니다. 더 자세한 내용은 저장소 README에서 읽을 수 있습니다. 저장소 README ↗
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Frontend Next.js. El backend Laravel vive en un repo aparte, backend-sass.
mi-saas/
├── web/ Next.js 16 + MUI 7 (base: plantilla Modernize) + el BFF
└── docs/ Ficha de cada vista + el JSON que espera de la API
📖 docs/README.md — índice de vistas, convenciones de la
API y el contrato JSON de cada pantalla.
📄 docs/api-contract.md — el contrato con
backend-sass. Se edita aquí y solo aquí.
# terminal 1 — backend (repo backend-sass)
php artisan serve # http://localhost:8000
# terminal 2 — frontend
cd web && npm install && npm run dev # http://localhost:3000
web/src| Carpeta | Qué va aquí |
|---|---|
app/ | Solo rutas. Cada page.tsx compone; no lleva lógica de negocio. |
features/ | Un módulo de negocio por carpeta: components/, hooks/, services/, types.ts. |
components/ | UI reutilizable de la plantilla (shared/, forms/, container/). |
layout/ | Sidebar, header, customizer, breadcrumb. El menú vive en layout/vertical/sidebar/MenuItems.ts. |
lib/ | Infraestructura: cliente axios, query client, tipos de la API. |
context/ | Contextos globales (customizer del tema). |
utils/ | Theme de MUI e i18n. |
config/ | Lectura de variables de entorno. |
| Módulo | Ruta | Estado |
|---|---|---|
| Dashboard | / | ✅ construido (KPIs, ventas 7 días, citas de hoy) |
| Clientes | /clientes | ✅ listado paginado |
| Citas | /citas | ⬜ ruta creada, pendiente |
| Calendario | /calendario | ⬜ pendiente |
| Servicios | /servicios | ⬜ pendiente |
| Categorías | /categorias | ⬜ pendiente |
| Empleados | /empleados | ⬜ pendiente |
| Locales | /locales | ⬜ pendiente |
| Caja | /caja | ⬜ pendiente |
| Inventario | /inventario | ⬜ pendiente |
| Reportes | /reportes | ⬜ pendiente |
| Mi Plan | /mi-plan | ⬜ pendiente (banner de prueba ✅) |
/whatsapp | ⬜ pendiente | |
| Configuración | /configuracion, /configuracion/perfil | ⬜ pendiente |
| Soporte | /soporte | ⬜ pendiente |
Los módulos pendientes renderizan components/shared/ModuloPendiente.tsx: la ruta
navega y el menú funciona, pero la pantalla está sin construir.
web/src/features/facturas/ con types.ts, services/facturas.api.ts, hooks/useFacturas.ts, components/.web/src/app/(dashboard)/facturas/page.tsx que solo importa y compone.layout/vertical/sidebar/MenuItems.ts (y en layout/horizontal/navbar/Menudata.ts si usas ese layout).Usa features/clientes/ como plantilla: está completo de punta a punta (servicio → hook con React Query → tabla paginada → página).
La demo completa de Modernize está en mi-modernize-app/packages/typescript/main/src/app/components/.
Cuando necesites una vista nueva (kanban, chat, perfil, e-commerce, gráficas), copia el
componente desde ahí a web/src/features/<modulo>/components/, ajusta los imports
(@/app/components/... → @/components/...) y cambia el mock por tu servicio real.
Sanctum por tokens, detrás de un BFF. El navegador habla con /api/* —el
proxy que corre dentro de Next— y es el proxy quien llama a Laravel con el
Authorization: Bearer. El token vive en una cookie httpOnly que el JS del
navegador no ve.
| Archivo | Qué hace |
|---|---|
web/src/lib/api/client.ts | axios con baseURL: "/api", sin nada de sesión |
web/src/app/api/[...path]/route.ts | el proxy: pone Bearer y X-Tenant |
web/src/app/api/auth/{login,logout}/route.ts | lo único que escribe y borra la cookie |
web/src/lib/auth/sesion.ts | las cookies y la URL del upstream |
web/src/features/auth/services/auth.api.ts | los endpoints, desde el cliente |
Lo que se le pide a Laravel está en docs/api-contract.md § "Base y transporte".