eDev Summary - Generador de Resúmenes de Código
Extensión para VS Code que genera resúmenes estructurados de proyectos de código fuente, optimizados para compartir contexto con herramientas de IA y desarrolladores.

Vista Previa

Interfaz moderna con botones fijos en la parte inferior para fácil acceso a las acciones principales
Propósito
eDev Summary es una extensión para Visual Studio Code que genera un archivo consolidado llamado RESUMEN.txt. Este archivo contiene un resumen estructurado y delimitado del contenido de los archivos seleccionados dentro de un proyecto, ideal para:
- Proporcionar contexto rápido a desarrolladores.
- Preparar insumos para herramientas de IA.
- Revisar de forma eficiente la estructura y el contenido del proyecto.
Características Principales v5.1.1
1. Interfaz Moderna y Compacta
- Diseño profesional con bordes visibles y colores optimizados
- Botones fijos en la parte inferior: Acceso siempre disponible a acciones principales
- Responsive y adaptado para diferentes tamaños de panel
- Estados interactivos con transiciones suaves y feedback visual
- Selector inteligente de configuraciones con ancho controlado
2. Copia Automática al Portapapeles
- Siempre disponible: Todo resumen generado se copia automáticamente
- Sin intermediarios: Pega directamente en cualquier aplicación
- Compatible con archivos generados o solo portapapeles
3. Control de Archivo RESUMEN.TXT
- Checkbox inteligente: Decide si crear archivo físico o solo copiar
- Flexibilidad total: Adapta el flujo a tus necesidades
- Preferencias guardadas por configuración
4. Eliminación Inteligente de Comentarios
- Soporte multi-lenguaje: JavaScript, Python, Java, C++, HTML, CSS, y más
- Limpieza automática: Reduce tokens para optimizar uso con IA
- Código funcional intacto: Solo elimina comentarios, no lógica
5. Análisis Dinámico de Extensiones
- Detección automática de tipos de archivo en tu proyecto
- Badges interactivos con selección visual
- Previsualización del árbol de archivos antes de generar
6. Sistema de Configuraciones Múltiples
- Guardar y cargar configuraciones personalizadas
- Cambio rápido entre diferentes proyectos
- Valores por defecto inteligentes para exclusiones comunes
- Estado guardado automáticamente: Tus cambios no guardados se mantienen al cambiar entre extensiones
- Restauración inteligente: Al regresar, el formulario recupera exactamente como lo dejaste
- Persistencia entre sesiones: El estado se mantiene incluso al cerrar y abrir VS Code
Instalación y Uso
Instalación
- Abre VS Code
- Ve a Extensions (
Ctrl+Shift+X)
- Busca: "eDev Summary"
- Click Install
Primer Uso
- Abre la paleta de comandos (
Ctrl+Shift+P)
- Busca: "eDev Summary: Configuración de Resumen"
- El panel lateral se abrirá automáticamente
Interfaz de Usuario
Panel Principal
┌─────────────────────────────────────┐
│ ⚙️ Configuración │
│ ┌─────────────────────────────────┐ │
│ │ 🌐 Español 📁 │ │
│ │ ┌─────────────────────────────┐ │ │
│ │ │ + Nueva config ▼ │ │ │
│ └───────────────────────────────┘ │ │
│ │
│ 📁 Ruta Base: │
│ ┌─────────────────────────────┐ │
│ │ C:\Proyecto\... 📁 │ │
│ └─────────────────────────────┘ │
│ │
│ 📂 Carpetas Permitidas: │
│ ┌─────────────────────────────┐ │
│ │ src, app, components │ │
│ └─────────────────────────────┘ │
│ │
│ 🚫 Carpetas Excluidas: │
│ ┌─────────────────────────────┐ │
│ │ node_modules, dist, .git │ │
│ └─────────────────────────────┘ │
│ │
│ 📄 Archivos Excluidos: │
│ ┌─────────────────────────────┐ │
│ │ *.log, .env, package-lock │ │
│ └─────────────────────────────┘ │
│ │
│ ┌─────────────────────────────────┐ │
│ │ ☑️ Todas ext ☑️ Archivo │ │
│ │ ⬜ Sin comentarios │ │
│ └───────────────────────────────┘ │ │
│ │
│ 🔍 Extensiones: │
│ 🏷 .js 🏷 .ts 🏷 .css 🏷 .html │
│ │
│ ┌─────────┬──────────┬─────────┐ │
│ │ Guardar │ Generar │Eliminar │ │
│ └─────────┴──────────┴─────────┘ │
└─────────────────────────────────────┘
Estados Interactivos
- Hover: Elementos se resaltan con colores y elevación
- Focus: Bordes azules con sombras suaves en inputs
- Selección: Badges de extensiones cambian de color
- Animaciones: Transiciones suaves de 0.2s en todas las interacciones
Configuración Avanzada
Campos de Configuración
| Campo |
Descripción |
Ejemplo |
| Nombre |
Identificador único |
"Frontend App" |
| Ruta Base |
Directorio raíz del proyecto |
"C:/proyectos/app" |
| Carpetas Permitidas |
Solo analizar estas carpetas |
"src,app,components" |
| Carpetas Excluidas |
Nunca analizar estas |
"node_modules,dist,.git" |
| Archivos Excluidos |
Patrones de archivos |
".log,.env,package-lock.json" |
| Extensiones |
Tipos de archivo a incluir |
.js,.ts,.css,.html |
Opciones de Procesamiento
| Opción |
Descripción |
Por Defecto |
| Generar Archivo |
Crear RESUMEN.TXT físico |
✅ Activado |
| Sin Comentarios |
Eliminar comentarios del código |
⬜ Desactivado |
| Todas Extensiones |
Incluir combinaciones raras |
⬜ Desactivado |
Exclusiones por Defecto
Carpetas siempre excluidas:
node_modules, .git, dist, build, out, target, .idea,
.vscode, .gradle, bin, obj, logs, temp, tmp, cache,
coverage, __pycache__, venv, env, .next, .nuxt, vendor
Archivos siempre excluidos:
package-lock.json, .gitignore, .DS_Store, Thumbs.db,
*.log, *.tmp, *.temp, *.swp, *.bak, *.class, *.pyc,
*.pyo, *.exe, *.dll, *.obj, *.o, *.a, *.lib, *.so,
*.dylib, *.ncb, *.sdf, *.suo, *.pdb, *.idb, .env*
Eliminación de Comentarios
Lenguajes Soportados
| Lenguaje |
Sintaxis |
Extensiones |
| JavaScript/TypeScript |
// /* */ |
.js, .ts, .jsx, .tsx |
| Python |
# |
.py |
| Java/C/C++/C# |
// /* */ |
.java, .c, .cpp, .cs |
| HTML/XML |
|
.html, .xml, .svg |
| CSS |
/* */ |
.css, .scss, .sass, .less |
| Shell/Ruby |
# |
.sh, .bash, .rb |
| YAML |
# |
.yaml, .yml |
| Go/PHP/Swift |
// /* */ |
.go, .php, .swift |
| Kotlin/Scala/Rust |
// /* */ |
.kt, .scala, .rs |
Ejemplo de Limpieza
Código Original:
// Función para calcular el total
function calculateTotal(items) {
/* Validar entrada */
if (!items || items.length === 0) {
return 0; // Retornar cero si vacío
}
let total = 0;
// Sumar cada item
items.forEach(item => {
total += item.price; // Acumular precio
});
return total; // Retornar total calculado
}
Después de eliminar comentarios:
function calculateTotal(items) {
if (!items || items.length === 0) {
return 0;
}
let total = 0;
items.forEach(item => {
total += item.price;
});
return total;
}
Nota: Las URLs válidas como https://www.google.com se mantienen intactas, solo se eliminan los comentarios reales.
Estructura del RESUMEN.TXT
/* ===== INICIO DEL RESUMEN ===== */
/* Proyecto: Mi Aplicación Frontend */
/* Fecha: 2025-10-04 15:30:00 */
/* Extensiones: .js, .ts, .css */
/* Total de archivos: 24 */
/* Total de líneas: 1,247 */
/* ========== ARCHIVOS ========== */
/* Inicio src/components/Header.js */
import React from 'react';
function Header() {
return (
<header className="header">
<h1>Mi App</h1>
</header>
);
}
export default Header;
/* Fin src/components/Header.js */
/* Inicio src/styles/main.css */
.header {
background: [#333](https://github.com/yamidnozu/utilidades/issues/333);
color: white;
padding: 1rem;
}
/* Fin src/styles/main.css */
/* ===== FIN DEL RESUMEN ===== */
Cada resumen incluye:
- Fecha y hora de generación
- Número total de archivos
- Conteo de líneas por archivo
- Extensiones procesadas
- Distribución por tipo de archivo
Internacionalización
Idiomas Soportados
- Español (predeterminado)
- English
Cambio de Idioma
- En el panel lateral, selecciona el desplegable de idioma
- Elige entre "Español" o "English"
- La interfaz se actualiza automáticamente
Flujos de Trabajo
Para Compartir con IA
- Desactivar "Generar archivo"
- Activar "Sin comentarios"
- Seleccionar extensiones relevantes
- Generar → Copia automática al portapapeles
- Pegar directamente en la herramienta de IA
Para Documentación
- Activar "Generar archivo"
- Desactivar "Sin comentarios" (mantener contexto)
- Configurar carpetas específicas
- Generar → Archivo + portapapeles
- Compartir el archivo RESUMEN.TXT
Para Revisión de Código
- Configurar rutas específicas
- Activar "Sin comentarios" para foco en lógica
- Usar previsualización para verificar alcance
- Generar según necesidad
🔧 Desarrollo y Contribución
Requisitos del Sistema
- VS Code: 1.92.0 o superior
- Node.js: 18.x o superior
- npm: 8.x o superior
Configuración de Desarrollo
# Clonar el repositorio
git clone https://github.com/yamidnozu/utilidades.git
cd utilidades/vscode-extensiones/ext1/summary1
# Instalar dependencias
npm install
# Compilar en modo desarrollo
npm run compile
# Probar la extensión (F5 en VS Code)
Scripts Disponibles
npm run compile # Compilar para producción
npm run watch # Compilación automática en desarrollo
npm run package # Crear paquete .vsix
npm run test # Ejecutar tests
npm run lint # Verificar código con ESLint
Estructura del Proyecto
summary1/
├── src/
│ ├── extension.ts # Punto de entrada principal
│ └── SummaryViewProvider.ts # Lógica de la interfaz webview
├── resources/
│ ├── summary-icon-minimal.png # Icono principal de la extensión
│ └── summary-sidebar-minimal.svg # Icono de la barra lateral
├── dist/ # Archivos compilados
├── package.json # Configuración de la extensión
├── tsconfig.json # Configuración TypeScript
└── webpack.config.js # Configuración de empaquetado
📦 Publicación
Preparación del Paquete
# 1. Compilar para producción
npm run compile
# 2. Crear el paquete .vsix
npm run package
# 3. Verificar el paquete creado
ls -la *.vsix
Publicación en Marketplace
# 1. Login con tu cuenta de publisher
vsce login edevcoresummary
# 2. Publicar la extensión
vsce publish
# 3. Verificar en el marketplace
# https://marketplace.visualstudio.com/manage/publishers/edevcoresummary
Token de Acceso Personal (PAT)
Changelog
[5.1.1] - 2025-10-04
- Imagen de vista previa agregada: Captura de pantalla de la interfaz en el README
- Documentación mejorada: Descripción visual de la extensión para nuevos usuarios
- Actualización de badges: Versión actualizada en los indicadores
[5.1.0] - 2025-10-04
- Botones fijos en la parte inferior: Los controles principales permanecen siempre visibles sin necesidad de scroll
- Mejor experiencia de usuario: Acceso rápido a acciones cuando hay mucho contenido en el panel
- Layout optimizado: Diseño responsivo que se adapta mejor al contenido extenso
- Posicionamiento sticky: Los botones de acción siempre accesibles
[5.0.0] - 2025-10-04
- Nueva versión mayor con optimizaciones de rendimiento
- Compatibilidad ampliada para nuevos tipos de archivos
- Actualización de dependencias y mejoras de estabilidad
- Persistencia completa del estado: El formulario mantiene todos los cambios entre sesiones y reinicios de VS Code
- Sistema de estado mejorado usando
globalState para persistencia confiable
- Recuperación inteligente de configuración: El selector recuerda la configuración seleccionada y prioriza modificaciones sin guardar
- Loader de recuperación de estado: Indicador visual durante la restauración del estado guardado
[4.1.0] - 2025-10-04
- Copia automática al portapapeles
- Checkbox para generar archivo RESUMEN.TXT
- Eliminación inteligente de comentarios
- Interfaz completamente rediseñada
- Bordes visibles y colores optimizados
- Selector de configuración compacto
- Estados interactivos mejorados
- Sistema de logging profesional
- Internacionalización completa
Versiones Anteriores
- [4.0.3] - Sistema de logging y correcciones
- [4.0.2] - Mejoras menores
- [4.0.0] - Sistema de configuraciones múltiples
- [3.1.0] - Previsualización de árbol
- [3.0.0] - Rediseño de interfaz webview
- [2.0.2] - Versión inicial funcional
Soporte y Contribución
Reportar Issues
Contribuir
- Fork el repositorio
- Crear una rama para tu feature
- Desarrollar siguiendo las guías de código
- Testear exhaustivamente
- Crear PR con descripción detallada
📄 Licencia
MIT License - Ver LICENSE.md para detalles completos.
🙏 Agradecimientos
- GitHub Copilot - Asistencia en desarrollo
- VS Code Team - Plataforma excepcional
- Comunidad Open Source - Librerías y herramientas
Conclusión
eDev Summary v5.1.1 representa la evolución definitiva en la gestión de resúmenes de código. Con su interfaz moderna, funcionalidades inteligentes y optimización para IA, transforma completamente la forma en que los desarrolladores comparten y documentan su código.
¡Descubre el poder de los resúmenes inteligentes hoy mismo!
Desarrollado por yamidnozu