# Social Media Automation - Consultoría AS Sistema automatizado para la creación y publicación de contenido en redes sociales (X, Threads, Instagram, Facebook). ## Características - **Generación de contenido con IA** (DeepSeek API) - **Publicación automática** en múltiples plataformas - **Calendario de contenido** configurable - **Dashboard de gestión** para aprobar y revisar posts - **Gestión de interacciones** (comentarios, menciones, DMs) - **Plantillas de imágenes** personalizadas ## Stack Tecnológico - **Backend**: Python + FastAPI - **Base de datos**: PostgreSQL - **Cola de tareas**: Celery + Redis - **IA**: DeepSeek API - **Contenedores**: Docker Compose ## Instalación ### Requisitos Previos - Docker y Docker Compose - Cuentas de desarrollador en: - [X Developer](https://developer.twitter.com) - [Meta Developer](https://developers.facebook.com) - [DeepSeek](https://platform.deepseek.com) ### Pasos 1. **Clonar el repositorio** ```bash git clone https://git.consultoria-as.com/consultoria-as/social-media-automation.git cd social-media-automation ``` 2. **Configurar variables de entorno** ```bash cp .env.example .env # Editar .env con tus credenciales ``` 3. **Iniciar servicios** ```bash docker-compose up -d ``` 4. **Poblar base de datos** ```bash docker-compose exec app python scripts/seed_database.py ``` 5. **Acceder al dashboard** ``` http://localhost:8000 ``` ## Estructura del Proyecto ``` ├── app/ # Aplicación principal │ ├── api/ # Endpoints de la API │ ├── core/ # Configuración │ ├── models/ # Modelos SQLAlchemy │ ├── publishers/ # Publishers por plataforma │ ├── services/ # Lógica de negocio │ └── prompts/ # Prompts para IA ├── worker/ # Celery workers │ └── tasks/ # Tareas programadas ├── dashboard/ # Frontend del dashboard ├── templates/ # Plantillas de imágenes ├── data/ # Datos iniciales ├── scripts/ # Scripts de utilidad └── docker-compose.yml # Configuración Docker ``` ## Uso ### Dashboard - **Home**: Resumen y estadísticas - **Posts**: Gestionar publicaciones - **Calendario**: Configurar horarios - **Interacciones**: Responder comentarios - **Productos**: Gestionar catálogo ### API Documentación disponible en: - Swagger: `http://localhost:8000/api/docs` - ReDoc: `http://localhost:8000/api/redoc` ### Endpoints Principales ``` GET /api/posts # Listar posts POST /api/posts # Crear post GET /api/posts/pending # Posts pendientes POST /api/posts/{id}/approve # Aprobar post GET /api/products # Listar productos POST /api/products # Crear producto GET /api/calendar # Ver calendario POST /api/calendar # Crear entrada GET /api/interactions # Ver interacciones POST /api/interactions/{id}/respond # Responder ``` ## Configuración del Calendario El calendario determina qué tipo de contenido se publica y cuándo: | Día | Hora | Tipo | Plataformas | |-----|------|------|-------------| | L-V | 09:00 | Tip Tech | X, Threads, IG | | L-V | 15:00 | Dato Curioso | X, Threads | | L,M,V | 12:00 | Producto | FB, IG | | M,J | 11:00 | Servicio | X, FB, IG | ## Desarrollo ### Ejecutar sin Docker ```bash # Instalar dependencias pip install -r requirements.txt # Variables de entorno export DATABASE_URL=postgresql://... export REDIS_URL=redis://... # Iniciar API uvicorn app.main:app --reload # Iniciar Worker celery -A worker.celery_app worker --loglevel=info # Iniciar Beat celery -A worker.celery_app beat --loglevel=info ``` ### Tests ```bash pytest tests/ -v ``` ## Licencia Propiedad de Consultoría AS - Todos los derechos reservados. ## Contacto - Web: https://consultoria-as.com - Email: contacto@consultoria-as.com