chore: estructura inicial del MVP

Backend (Express + MariaDB) y frontend (React + Vite, identidad Fluent/Windows) con el
nucleo funcional: seguridad, organizacion, proyectos, actividades, subtareas, dependencias,
dashboard, calendario, gantt, comentarios, adjuntos, notificaciones in-app y catalogos.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
Milton Gonzalez
2026-09-03 08:37:58 -05:00
commit 1d22adc42e
135 changed files with 10913 additions and 0 deletions
+21
View File
@@ -0,0 +1,21 @@
import { useState } from 'react';
import { Info, CheckCircle2, AlertTriangle, XCircle, X } from 'lucide-react';
const ICONS = { info: Info, success: CheckCircle2, warning: AlertTriangle, error: XCircle };
export function InfoBar({ tone = 'info', children, dismissible = true }) {
const [visible, setVisible] = useState(true);
if (!visible) return null;
const Icon = ICONS[tone] || Info;
return (
<div className={`infobar infobar-${tone}`}>
<Icon />
<div>{children}</div>
{dismissible && (
<button className="infobar-close" onClick={() => setVisible(false)}>
<X size={14} />
</button>
)}
</div>
);
}