Hoja de Ruta

Fase 0 · Base y Núcleo

  • Inicializar proyecto Rust con dependencias
  • Detección multiplataforma de SO (Linux, Windows, macOS)
  • Crear módulo de recopilación de información del sistema
  • Implementar sistema de configuración con soporte JSONC
  • Construir motor de renderizado UI con crossterm

Fase 1 · Módulos de Información del Sistema

  • Mostrar nombre del SO y arquitectura
  • Detección de versión del kernel
  • Resolución de hostname
  • Detección y visualización de shell
  • Detección de emulador de terminal
  • Información del modelo y frecuencia de CPU
  • Detección de GPU (discreta e integrada)
  • Visualización de uso de memoria y RAM
  • Estadísticas de uso de disco
  • Estado y porcentaje de batería
  • Cálculo de tiempo de actividad del sistema
  • Conteo de paquetes para múltiples gestores (pacman, dpkg, scoop)
  • Detección de entorno de escritorio / gestor de ventanas

Fase 2 · Personalización Visual y Diseños

  • Soporte de arte ASCII personalizado desde archivos
  • Soporte de logotipos SVG/Imagen via viuer
  • Códigos de color ANSI en logotipos ASCII
  • Personalización de iconos por módulo (Nerd Fonts)
  • Personalización de colores por módulo
  • Diseño predeterminado (lado a lado)
  • Diseño Pac-Man con cabecera/pie personalizado
  • Diseño de bloque lateral
  • Diseño de árbol para visualización jerárquica
  • Diseño de sección para información agrupada
  • Paleta de colores con opciones de estilo

Fase 3 · Documentación y Ejemplos

  • Guía de instalación
  • Guía de configuración
  • Script de instalación rápida para Linux/macOS
  • Script de instalación PowerShell para Windows
  • 20+ configuraciones de ejemplo
  • Logotipos de muestra (texto y SVG)
  • Scripts de desinstalación
  • Documentación de diseños

Fase 4 · Expansión de Gestores de Paquetes

  • Soporte para gestor RPM (Fedora, RHEL)
  • Soporte para gestor APK (Alpine)
  • Soporte para gestor Nix
  • Soporte para gestor Homebrew (macOS/Linux)
  • Soporte para gestor Chocolatey (Windows)
  • Detección de múltiples gestores instalados
  • Optimización de rendimiento del conteo de paquetes

Fase 5 · Red y Conectividad

  • Detección de dirección IP local
  • Obtención de IP pública (con opción de privacidad)
  • Soporte IPv6
  • Visualización de información de interfaces de red
  • Opción para deshabilitar la obtención de IP por privacidad

Fase 6 · Módulos Mejorados

  • Integración con reproductor de música (soporte MPD)
  • Visualización de pista actual de Spotify
  • Módulo meteorológico con API de ubicación
  • Visualización de zona horaria y reloj mundial
  • Información de usuario y estado de inicio de sesión
  • Resolución de pantalla y tasa de refresco
  • Detección de tema y esquema de colores

Fase 7 · Diseños Adicionales

  • Diseño compacto para salida mínima
  • Diseño horizontal
  • Diseño inferior con logo debajo de la info
  • Diseño minimalista (solo texto)
  • Documentación de vista previa de diseños

Fase 8 · Optimización de Rendimiento

  • Sondas lentas de hardware paralelizadas
  • Caché de datos de módulos
  • Optimización de detección GPU para sistemas multi-GPU
  • Carga diferida para módulos opcionales
  • Evaluación comparativa y perfilado de rendimiento
  • Estructura de archivos modularizada

Fase 9 · CI/CD y Distribución

  • GitHub Actions para compilaciones automatizadas
  • Lanzamientos binarios para Linux x86_64
  • Lanzamientos binarios para macOS (Intel & ARM)
  • Lanzamientos binarios para Windows
  • Paquete AUR para Arch Linux
  • Homebrew tap para macOS
  • Registro cargo para distribución
  • Generación automatizada de changelog

Fase 10 · Comunidad y Ecosistema

  • Crear repositorio/registro de temas
  • Implementar gestor de descarga de temas
  • Crear herramienta de vista previa de temas en línea
  • Establecer proceso de contribución de temas comunitarios
  • Crear sistema de plugins para módulos personalizados
  • [/] Implementar validación de configuración de plugins
  • Establecer plantillas de issues comunitarias
  • Crear guías de contribución

Fase 11 · Pruebas y Aseguramiento de Calidad

  • Pruebas unitarias para el módulo de información
  • Pruebas unitarias para el módulo de configuración
  • Pruebas de integración para diseños
  • Configurar linting con clippy
  • Configurar formateador de código (rustfmt)
  • Implementar pruebas específicas por plataforma
  • [/ ] Añadir suite de pruebas multiplataforma
  • Configurar informe de cobertura de código

Fase 12 · Funciones Avanzadas

  • Implementar lenguaje de scripting / soporte para módulos personalizados
  • Añadir visualización condicional de módulos según estado del sistema
  • Implementar sistema de temas con variables
  • Añadir soporte de animación para elementos transicionales
  • Implementar actualizaciones en tiempo real / modo daemon
  • Añadir capacidad de recarga en caliente de configuración
  • Implementar telemetría (opcional, respetuosa con la privacidad)
  • Añadir funciones de accesibilidad (temas de alto contraste)

Fase 13 · Documentación y Marketing

  • Crear manual de usuario completo
  • Crear tutoriales en video
  • Configurar sitio web del proyecto con showcase
  • Crear documentación para desarrolladores
  • Publicar artículos de blog sobre funciones
  • [/] Crear guía comparativa con herramientas similares
  • Configurar canal comunitario Discord/Slack
  • [/] Crear programa de contribución