Sistema completo de automatización de marketing con frontend moderno y backend API robusto.
Diseño original en Figma: https://www.figma.com/design/OT3R3QaPCmFg6vTvTmYYo4/Marketing-Automation-Software
- ✅ Dashboard con métricas en tiempo real
- ✅ Gestión completa de contactos con importación CSV
- ✅ Constructor de campañas de email con A/B testing
- ✅ Landing pages personalizables
- ✅ Segmentación dinámica de contactos
- ✅ Automatizaciones de marketing
- ✅ Reportes y analytics
- ✅ Soporte multi-idioma (ES/EN)
- ✅ Modo oscuro/claro
- ✅ API RESTful con Express + TypeScript
- ✅ Base de datos MongoDB con Mongoose
- ✅ Autenticación JWT
- ✅ Sistema de roles y permisos
- ✅ Seguimiento de eventos
- ✅ Rate limiting y seguridad
- ✅ Documentación completa
- React 18.3.1 + TypeScript
- Vite 6.4.1
- Radix UI components
- Tailwind CSS
- Recharts para gráficos
- React Hook Form
- Node.js + Express
- TypeScript
- MongoDB + Mongoose
- JWT para autenticación
- Bcrypt para passwords
- Helmet para seguridad
Este proyecto está configurado para desplegarse fácilmente en Vercel con MongoDB Atlas.
- Instalar dependencias:
npm install-
Configurar variables de entorno en Vercel:
MONGODB_URI: Tu conexión de MongoDB AtlasJWT_SECRET: Clave secreta para JWTNODE_ENV: productionCORS_ORIGIN: * (o tu dominio)
-
Desplegar:
vercelVer DEPLOY_INSTRUCTIONS.md para instrucciones detalladas.
- Node.js >= 18.x
- MongoDB >= 6.x
- npm o yarn
# Instalar dependencias del frontend
npm install
# Instalar dependencias del backend
cd server
npm install
cd ..Opción A: MongoDB Local
# macOS
brew services start mongodb-community
# Linux
sudo systemctl start mongod
# Windows
net start MongoDBOpción B: MongoDB Atlas (Cloud)
- Crear cuenta en https://www.mongodb.com/atlas
- Crear cluster gratuito
- Obtener connection string
- Actualizar
server/.env
# Backend
cd server
cp .env.example .env
# Editar .env con tus valores
cd ..Terminal 1 - Backend:
cd server
npm run devEl backend estará en: http://localhost:5001
Terminal 2 - Frontend:
npm run devEl frontend estará en: http://localhost:3000
curl -X POST http://localhost:5001/api/auth/register \
-H "Content-Type: application/json" \
-d '{
"email": "admin@example.com",
"password": "admin123",
"name": "Admin User"
}'- Backend API: Ver server/README.md
- Modelos de datos: Documentados en cada modelo en
server/src/models/ - Endpoints: Lista completa en la documentación del servidor
marketing-automation-software/
├── src/ # Frontend (React + Vite)
│ ├── components/ # Componentes de React
│ │ ├── ui/ # Componentes UI (Radix)
│ │ ├── Dashboard.tsx
│ │ ├── Contacts.tsx
│ │ ├── Campaigns.tsx
│ │ └── ...
│ └── contexts/ # React Context
├── server/ # Backend (Node.js + Express)
│ ├── src/
│ │ ├── models/ # Modelos de MongoDB
│ │ ├── controllers/ # Controladores de la API
│ │ ├── routes/ # Rutas de la API
│ │ └── middleware/ # Auth, errors
│ └── README.md # Documentación del backend
└── README.md # Este archivo
La API usa JWT. Para hacer requests autenticados:
- Login para obtener token
- Incluir token en header:
Authorization: Bearer TOKEN
Ver documentación completa en server/README.md
npm run dev # Modo desarrollo
npm run build # Build para produccióncd server
npm run dev # Modo desarrollo con nodemon
npm run build # Compilar TypeScript
npm start # Ejecutar producción- Vercel, Netlify u otro hosting estático
- Build:
npm run build - Deploy carpeta
dist/
- Railway, Render, DigitalOcean
- Configurar MongoDB Atlas
- Establecer variables de entorno
Este proyecto es privado y confidencial.
Para más información, consulta la documentación del backend en server/README.md