|
1 | | -# 🚀 AutoDocOps |
2 | | - |
3 | | -**Generador automático de documentación viva para APIs .NET y bases de datos SQL Server** |
4 | | - |
5 | | -[](https://dotnet.microsoft.com/download/dotnet/8.0) |
6 | | -[](https://reactjs.org/) |
7 | | -[](https://www.typescriptlang.org/) |
8 | | -[](https://opensource.org/licenses/MIT) |
9 | | -[](https://autodocops-api.fly.dev) |
10 | | - |
11 | | -## 📖 Descripción |
12 | | - |
13 | | -AutoDocOps es una plataforma SaaS que automatiza la generación de documentación viva para APIs .NET y bases de datos SQL Server. Combina análisis de código inteligente con IA generativa para crear documentación completa, actualizada y accesible. |
14 | | - |
15 | | -### 🎯 Propuesta de Valor |
16 | | - |
17 | | -- **Conectividad Universal**: Se conecta directamente a repositorios .NET y bases de datos SQL Server |
18 | | -- **Documentación Completa**: Genera OpenAPI 3.1, Swagger UI, colecciones Postman y SDKs en TypeScript/C# |
19 | | -- **Análisis Inteligente**: Crea diagramas ER y diccionarios de datos en español e inglés |
20 | | -- **Chat Semántico**: Guías de uso interactivas con GPT-4o y búsqueda vectorial |
21 | | -- **Ventaja Competitiva**: Funcionalidades únicas que competidores como SwaggerHub ($75-399/mes) no ofrecen |
22 | | - |
23 | | -## ✨ Características Principales |
24 | | - |
25 | | -### 🔍 Análisis Automático |
26 | | -- Extracción de metadatos de APIs .NET |
27 | | -- Análisis de esquemas SQL Server |
28 | | -- Generación de OpenAPI 3.1 compliant |
29 | | -- Detección automática de endpoints y modelos |
30 | | - |
31 | | -### 📚 Documentación Generada |
32 | | -- **Swagger UI** interactivo y personalizable |
33 | | -- **Colecciones Postman** listas para usar |
34 | | -- **SDKs** en TypeScript y C# auto-generados |
35 | | -- **Guías de uso** detalladas en múltiples idiomas |
36 | | - |
37 | | -### 🗄️ Base de Datos |
38 | | -- **Diagramas ER** en formato Mermaid |
39 | | -- **Diccionarios de datos** completos |
40 | | -- Análisis de relaciones y constraints |
41 | | -- Documentación de procedimientos almacenados |
42 | | - |
43 | | -### 🤖 IA Integrada |
44 | | -- **Chat semántico** con contexto de documentación |
45 | | -- **Búsqueda vectorial** con pgvector |
46 | | -- **GPT-4o-mini** para generación de contenido |
47 | | -- Cache inteligente para optimización de costos |
48 | | - |
49 | | -## 🏗️ Arquitectura |
50 | | - |
51 | | -### Stack Tecnológico |
52 | | - |
53 | | -**Backend** |
54 | | -- .NET 8 LTS con Minimal API y AOT |
55 | | -- Arquitectura Clean/Hexagonal |
56 | | -- Entity Framework Core con Npgsql |
57 | | -- Autenticación JWT + Supabase Auth |
58 | | - |
59 | | -**Frontend** |
60 | | -- Expo + React 19 (Native + Web) |
61 | | -- TypeScript estricto |
62 | | -- React Navigation 6 |
63 | | -- Componentes funcionales modernos |
64 | | - |
65 | | -**Base de Datos** |
66 | | -- Supabase Postgres 14 con pgvector |
67 | | -- Row Level Security (RLS) |
68 | | -- Índices vectoriales optimizados |
69 | | -- Backup automático |
70 | | - |
71 | | -**Infraestructura** |
72 | | -- Hosting: Fly.io + Cloudflare Pages + R2 |
73 | | -- CI/CD: GitHub Actions + Terraform |
74 | | -- Observabilidad: Grafana Cloud (Loki + Tempo) |
75 | | -- Seguridad: TLS 1.3 + HSTS + CSP |
76 | | - |
77 | | -## 🚀 Inicio Rápido |
78 | | - |
79 | | -### Prerrequisitos |
80 | | - |
81 | | -- [.NET 8 SDK](https://dotnet.microsoft.com/download/dotnet/8.0) |
82 | | -- [Node.js 18+](https://nodejs.org/) |
83 | | -- [Docker](https://docker.com/) (opcional) |
84 | | -- Cuenta en [Supabase](https://supabase.com/) |
85 | | -- API Key de [OpenAI](https://openai.com/) |
86 | | - |
87 | | -### Instalación Local |
88 | | - |
89 | | -```bash |
90 | | -# Clonar repositorio |
91 | | -git clone https://github.com/tu-usuario/AutoDocOps.git |
92 | | -cd AutoDocOps |
93 | | - |
94 | | -# Configurar backend |
95 | | -cd backend |
96 | | -dotnet restore |
97 | | -dotnet build |
98 | | - |
99 | | -# Configurar frontend |
100 | | -cd ../frontend/AutoDocOps-Frontend |
101 | | -npm install |
102 | | - |
103 | | -# Configurar variables de entorno |
104 | | -cp .env.example .env.local |
105 | | -# Editar .env.local con tus configuraciones |
106 | | -``` |
107 | | - |
108 | | -### Configuración |
109 | | - |
110 | | -1. **Base de Datos**: |
111 | | - ```bash |
112 | | - # Ejecutar script de configuración en Supabase |
113 | | - psql -f database/supabase-setup.sql |
114 | | - ``` |
115 | | - |
116 | | -2. **Variables de Entorno**: |
117 | | - ```bash |
118 | | - # Backend (.env) |
119 | | - DATABASE_URL=postgresql://... |
120 | | - SUPABASE_URL=https://... |
121 | | - OPENAI_API_KEY=sk-... |
122 | | - |
123 | | - # Frontend (.env.local) |
124 | | - EXPO_PUBLIC_API_URL=http://localhost:5000 |
125 | | - EXPO_PUBLIC_SUPABASE_URL=https://... |
126 | | - ``` |
127 | | - |
128 | | -3. **Ejecutar Aplicación**: |
129 | | - ```bash |
130 | | - # Backend |
131 | | - cd backend/src/AutoDocOps.Api/AutoDocOps.Api |
132 | | - dotnet run |
133 | | - |
134 | | - # Frontend (nueva terminal) |
135 | | - cd frontend/AutoDocOps-Frontend |
136 | | - npm run web |
137 | | - ``` |
138 | | - |
139 | | -## 📦 Despliegue |
140 | | - |
141 | | -### Despliegue Automatizado |
142 | | - |
143 | | -```bash |
144 | | -# Despliegue completo a producción |
145 | | -./scripts/deploy-all.sh production |
146 | | - |
147 | | -# Solo backend |
148 | | -./scripts/deploy.sh production |
149 | | - |
150 | | -# Solo frontend |
151 | | -./scripts/deploy-frontend.sh production |
152 | | -``` |
153 | | - |
154 | | -### URLs de Producción |
155 | | - |
156 | | -- **API**: https://autodocops-api.fly.dev |
157 | | -- **Frontend**: https://autodocops-frontend.pages.dev |
158 | | -- **Documentación**: https://autodocops-api.fly.dev/swagger |
159 | | - |
160 | | -Ver [Guía de Despliegue](docs/DEPLOYMENT.md) para instrucciones detalladas. |
161 | | - |
162 | | -## 🧪 Testing |
163 | | - |
164 | | -### Ejecutar Tests |
165 | | - |
166 | | -```bash |
167 | | -# Tests unitarios |
168 | | -cd backend |
169 | | -dotnet test tests/AutoDocOps.Tests.Unit |
170 | | - |
171 | | -# Tests de integración |
172 | | -dotnet test tests/AutoDocOps.Tests.Integration |
173 | | - |
174 | | -# Tests E2E |
175 | | -npm run test:e2e |
176 | | - |
177 | | -# Tests de performance |
178 | | -k6 run tests/performance/load-test.js |
179 | | -``` |
180 | | - |
181 | | -### Cobertura de Tests |
182 | | - |
183 | | -- **Tests Unitarios**: Dominio, Aplicación, Infraestructura |
184 | | -- **Tests de Integración**: Todos los endpoints de API |
185 | | -- **Tests E2E**: Flujos completos de usuario |
186 | | -- **Tests de Performance**: Carga y estrés |
187 | | -- **Tests de Seguridad**: OWASP ZAP scanning |
188 | | - |
189 | | -## 📊 Métricas y Monitoreo |
190 | | - |
191 | | -### Health Checks |
192 | | - |
193 | | -- **API**: `/health` - Estado general del sistema |
194 | | -- **Base de Datos**: Conectividad y latencia |
195 | | -- **IA**: Disponibilidad de OpenAI |
196 | | -- **Cache**: Estado de Redis/memoria |
197 | | - |
198 | | -### Métricas Disponibles |
199 | | - |
200 | | -- Tiempo de respuesta de endpoints |
201 | | -- Uso de tokens de OpenAI |
202 | | -- Throughput de documentación generada |
203 | | -- Errores y excepciones |
204 | | -- Uso de memoria y CPU |
205 | | - |
206 | | -## 💰 Modelo de Costos |
207 | | - |
208 | | -### MVP (Tier Gratuito) |
209 | | -- **Fly.io**: $0/mes (plan gratuito) |
210 | | -- **Cloudflare**: $0/mes (plan gratuito) |
211 | | -- **Supabase**: $0/mes (plan gratuito) |
212 | | -- **OpenAI**: $0.50-10/mes (según uso) |
213 | | - |
214 | | -**Total: $0.50-10/mes** |
215 | | - |
216 | | -### Producción Escalable |
217 | | -- **Fly.io**: $5-20/mes |
218 | | -- **Cloudflare**: $0-20/mes |
219 | | -- **Supabase**: $25/mes (plan Pro) |
220 | | -- **OpenAI**: $10-50/mes |
221 | | - |
222 | | -**Total: $40-115/mes** |
223 | | - |
224 | | -## 🔒 Seguridad |
225 | | - |
226 | | -### Características Implementadas |
227 | | - |
228 | | -- ✅ Autenticación JWT con Supabase |
229 | | -- ✅ Row Level Security (RLS) en base de datos |
230 | | -- ✅ Validación de entrada en todos los endpoints |
231 | | -- ✅ Rate limiting y throttling |
232 | | -- ✅ Headers de seguridad (HSTS, CSP, etc.) |
233 | | -- ✅ Secrets gestionados de forma segura |
234 | | -- ✅ Scanning automático de vulnerabilidades |
235 | | - |
236 | | -### Compliance |
237 | | - |
238 | | -- GDPR ready con manejo de datos personales |
239 | | -- SOC 2 Type II a través de Supabase |
240 | | -- Encriptación en tránsito y reposo |
241 | | -- Auditoría de accesos y cambios |
242 | | - |
243 | | -## 🤝 Contribución |
244 | | - |
245 | | -### Desarrollo |
246 | | - |
247 | | -1. Fork el repositorio |
248 | | -2. Crea una rama feature (`git checkout -b feature/nueva-funcionalidad`) |
249 | | -3. Commit tus cambios (`git commit -am 'Agregar nueva funcionalidad'`) |
250 | | -4. Push a la rama (`git push origin feature/nueva-funcionalidad`) |
251 | | -5. Crea un Pull Request |
252 | | - |
253 | | -### Estándares de Código |
254 | | - |
255 | | -- **Backend**: Clean Architecture, SOLID principles |
256 | | -- **Frontend**: Functional components, TypeScript estricto |
257 | | -- **Tests**: Cobertura mínima 80% |
258 | | -- **Documentación**: Inline comments + README actualizado |
259 | | - |
260 | | -## 📚 Documentación |
261 | | - |
262 | | -- [Guía de Despliegue](docs/DEPLOYMENT.md) |
263 | | -- [Documentación de API](https://autodocops-api.fly.dev/swagger) |
264 | | -- [Arquitectura del Sistema](docs/ARCHITECTURE.md) |
265 | | -- [Guía de Contribución](docs/CONTRIBUTING.md) |
266 | | -- [Changelog](CHANGELOG.md) |
267 | | - |
268 | | -## 🛣️ Roadmap |
269 | | - |
270 | | -### v1.1 (Q1 2025) |
271 | | -- [ ] Soporte para FastAPI (Python) |
272 | | -- [ ] Integración con Azure DevOps |
273 | | -- [ ] Temas personalizables para documentación |
274 | | -- [ ] API de webhooks para CI/CD |
275 | | - |
276 | | -### v1.2 (Q2 2025) |
277 | | -- [ ] Soporte para MySQL y PostgreSQL |
278 | | -- [ ] Generación de tests automáticos |
279 | | -- [ ] Integración con Slack/Teams |
280 | | -- [ ] Dashboard de analytics avanzado |
281 | | - |
282 | | -### v2.0 (Q3 2025) |
283 | | -- [ ] Soporte multi-tenant |
284 | | -- [ ] Marketplace de templates |
285 | | -- [ ] IA para sugerencias de mejoras |
286 | | -- [ ] Integración con IDEs (VS Code, JetBrains) |
287 | | - |
288 | | -## 📄 Licencia |
289 | | - |
290 | | -Este proyecto está licenciado bajo la Licencia MIT - ver el archivo [LICENSE](LICENSE) para detalles. |
291 | | - |
292 | | -## 👥 Equipo |
293 | | - |
294 | | -**Desarrollado por**: AutoDocOps Team |
295 | | -**Arquitecto Principal**: Manus AI |
296 | | -**Versión**: 1.0.0 |
297 | | -**Última Actualización**: Enero 2025 |
298 | | - |
299 | | -## 📞 Soporte |
300 | | - |
301 | | - |
302 | | -- **Discord**: [AutoDocOps Community](https://discord.gg/autodocops) |
303 | | -- **Issues**: [GitHub Issues](https://github.com/tu-usuario/AutoDocOps/issues) |
304 | | -- **Documentación**: [docs.autodocops.com](https://docs.autodocops.com) |
305 | | - |
306 | | ---- |
307 | | - |
308 | | -<div align="center"> |
309 | | - |
310 | | -**¿Te gusta AutoDocOps? ¡Dale una ⭐ en GitHub!** |
311 | | - |
312 | | -[🌐 Website](https://autodocops.com) • [📚 Docs](https://docs.autodocops.com) • [💬 Discord](https://discord.gg/autodocops) • [🐦 Twitter](https://twitter.com/autodocops) |
313 | | - |
314 | | -</div> |
315 | | - |
| 1 | +# AutoDocOps - Sistema de Documentación Automática |
0 commit comments