Implementación inicial del sistema de automatización de redes sociales
- Estructura completa del proyecto con FastAPI - Modelos de base de datos (productos, servicios, posts, calendario, interacciones) - Publishers para X, Threads, Instagram, Facebook - Generador de contenido con DeepSeek API - Worker de Celery con tareas programadas - Dashboard básico con templates HTML - Docker Compose para despliegue - Documentación completa Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
160
README.md
Normal file
160
README.md
Normal file
@@ -0,0 +1,160 @@
|
||||
# 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
|
||||
Reference in New Issue
Block a user