Skip to content

yosoyignicion/NexusStudio

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

███╗   ██╗███████╗██╗  ██╗██╗   ██╗███████╗     ███████╗████████╗██╗   ██╗██████╗ ██╗ ██████╗
████╗  ██║██╔════╝╚██╗██╔╝██║   ██║██╔════╝     ██╔════╝╚══██╔══╝██║   ██║██╔══██╗██║██╔═══██╗
██╔██╗ ██║█████╗   ╚███╔╝ ██║   ██║███████╗     ███████╗   ██║   ██║   ██║██║  ██║██║██║   ██║
██║╚██╗██║██╔══╝   ██╔██╗ ██║   ██║╚════██║     ╚════██║   ██║   ██║   ██║██║  ██║██║██║   ██║
██║ ╚████║███████╗██╔╝ ██╗╚██████╔╝███████║     ███████║   ██║   ╚██████╔╝██████╔╝██║╚██████╔╝
╚═╝  ╚═══╝╚══════╝╚═╝  ╚═╝ ╚═════╝ ╚══════╝     ╚══════╝   ╚═╝    ╚═════╝ ╚═════╝ ╚═╝ ╚═════╝

Vector Design Canvas — Local AI — C++17 Native

Editor SVG profesional con pipeline NLP dual (Ollama + rapidfuzz) y motor de capas Photopea-style

C++17 Qt6 Ollama License Build

Creado por Ignicion Dev — 3 años de ingeniería de prompt autodidacta | Agente: OpenCode | Modelo: DeepSeek V4 Flash


✨ ¿Qué es Nexus Studio?

Nexus Studio es un editor de diseño vectorial de escritorio que combina la potencia de un motor gráfico C++ nativo con inteligencia artificial local. Puedes describir lo que quieres dibujar en lenguaje natural y el software lo interpreta y lo renderiza al instante — sin depender de APIs externas, sin enviar datos a la nube.

Piense en un Photopea offline con superpoderes de IA generativa local, todo en un binario de ~8 MB.


🧠 Pipeline NLP Dual

Nexus Studio ejecuta dos motores de interpretación de lenguaje natural trabajando en cadena:

Motor Tecnología Velocidad Ideal para
Ollama LLM qwen2.5:3b / deepseek-r1 / llama3.2 ~500ms-3s Comandos complejos, lenguaje natural, contexto SVG completo
rapidfuzz offline rapidfuzz-cpp con token_sort_ratio <0.1ms Fallback instantáneo, tolerancia total a typos y orden de palabras

Flujo de trabajo:

Tú escribes → ¿Ollama disponible? → Sí → LLM local interpreta y estructura JSON
                                      → No → rapidfuzz procesa en 0.1ms con matching semántico
                                              → Resultado se aplica al SVG en tiempo real

El sistema conmuta de forma transparente: si Ollama no responde o el modelo está en cold start, rapidfuzz toma el control sin que notes la diferencia.


🎨 Motor de Capas Profesional (Photopea-Style)

Nexus Studio incorpora un sistema completo de gestión de capas que compite con editores vectoriales profesionales:

Característica Descripción
Modos de Fusión Normal, Multiplicar, Trama (Screen), Superponer (Overlay), Oscurecer (Darken) — vía mix-blend-mode en SVG
Bloqueo Posicional data-lock-position — edita propiedades pero no muevas/redimensiones
Bloqueo Total data-lock-all — capa completamente inmutable
Renombrado Rápido Doble clic sobre cualquier capa para renombrar inline con validación de IDs únicos
Reordenamiento Drag & Drop Arrastra capas para cambiar Z-index con feedback visual inmediato
Nuevo Grupo / Duplicar / Eliminar Botonera inferior con acceso directo a todas las operaciones
Exportación Individual Click derecho → Exporta cualquier capa como PNG o SVG aislado

🔧 Especificaciones Técnicas

Motor de Datos en Memoria

  • Single Source of Truth: Manipulación directa del DOM SVG vía pugixml — cero duplicidad de estado
  • Z-Index O(N): Reordenamiento lineal con caché de mapas hash (std::unordered_map)
  • Parseo Seguro: pugi::parse_default contra XXE
  • Undo/Redo: Historial completo de snapshots XML con commitState()

Sincronización Tridireccional (Anti-Bucle)

  • QSignalBlocker RAII + banderas m_isRefreshing + debounce 150ms en PropertiesWidget
  • Coordinación perfecta entre Canvas ↔ Propiedades ↔ Editor XML

Canvas Interactivo

  • Zoom con foco en cursor y pan libre vía QTransform
  • Smart Guides magnéticas (5px threshold, guías magenta #ff00ff)
  • Zonas seguras dinámicas: YouTube, Twitter/X, Instagram, Twitch
  • Snap a cuadrícula opcional

Animaciones SMIL Nativas

  • Ondas cósmicas animadas, campos de estrellas pulsantes
  • 60 FPS con ~0% CPU gracias a QSvgRenderer::repaintNeeded
  • Las animaciones se exportan dentro del SVG → funcionan en cualquier navegador

rapdifuzz-cpp integrado

El motor de fallback offline ha sido actualizado con rapidfuzz-cpp, reemplazando la implementación manual de Levenshtein por rapidfuzz::fuzz::token_sort_ratio. Esto proporciona:

  • Tolerancia completa al orden de las palabras
  • Comparación semántica difusa de frases completas
  • Comprensión de modismos y errores tipográficos en español
  • Procesamiento en menos de 0.1ms

🖥️ Modelos Compatibles (Ollama)

Modelo Parámetros RAM Mínima Ideal para
deepseek-r1:1.5b 1.5B 4-8 GB Laptops ligeras, CPU-only
qwen2.5:3b 3B 8 GB Recomendado — equilibrio precisión/velocidad
llama3.2:3b 3B 8 GB GPUs integradas modernas
deepseek-r1:8b 8B 16 GB PCs con GPU dedicada (VRAM 6GB+)

💡 Selecciona el modelo directamente desde la interfaz — el ComboBox en la toolbar ajusta el motor al vuelo.


🧪 Suite de Pruebas (9 Tests — 100% Pass)

./build/NexusStudio_Tests
# Test Descripción
1 Undo/Redo Mutaciones DOM y snapshots sin corrupción
2 Optimizador Reducción decimal y limpieza de nodos
3 FuzzyMatcher Extracción de intenciones con rapidfuzz
4 Z-Index Reordenamiento O(N) del árbol DOM
5 Raster Render Render vector→PNG con QTemporaryFile
6 RenameNode Renombrado y validación de IDs únicos
7 BlendModes Serialización correcta de mix-blend-mode
8 LockedPosition Persistencia de data-lock-position/all
9 ContextualNLP Comandos relativos a capa seleccionada

🚀 Compilación y Ejecución

Dependencias (Ubuntu/Debian)

sudo apt update
sudo apt install qt6-base-dev libqt6svg6-dev libvulkan-dev

Compilar

chmod +x build.sh && ./build.sh

GUI (Escritorio)

./build/NexusStudio

CLI (Headless)

./build/NexusStudio --cli "dibuja ondas cosmicas con degradado ocean" --output mi_arte.svg

🤝 Comunidad y Contribuciones

🇪🇸 ¡Únete al movimiento DeepSeek V4 Flash!

Este proyecto nace de 3 años de ingeniería de prompt autodidacta y la convicción de que la IA local de código abierto es el futuro. He desarrollado Nexus Studio apoyándome en OpenCode como agente y DeepSeek V4 Flash como modelo principal, demostrando que se puede construir software profesional con herramientas libres.

Buscamos específicamente una comunidad en torno a DeepSeek V4 Flash — un modelo que combina velocidad, precisión y capacidad de razonamiento. Queremos explorar juntos cómo un LLM local bien dirigido puede:

  • Generar y manipular SVG estructurado desde lenguaje natural
  • Coordinar pipelines multi-agente para edición gráfica
  • Servir como backend de razonamiento para aplicaciones C++ nativas

Si tienes experiencia con LLMs locales, ingeniería de prompt, C++/Qt6 o simplemente curiosidad por la IA de código abierto:

  • Issues: Reporta bugs, sugiere features, comparte tus prompts
  • Pull Requests: Código, documentación, tests — todo suma
  • Discussions: Comparte tus experimentos con DeepSeek V4 Flash

Cada contribución, por pequeña que sea, fortalece este puente entre la IA local y las herramientas de creación digital.

English 🇬🇧

Development Status: The asynchronous NLP pipeline with Ollama is under active development. Cold-start latency of local LLMs and schema formatting on smaller models are being calibrated. The C++ engine (DocumentModel) is fully structured and ready to receive commands.

To ensure daily usability, a professional Photopea-style layer engine is already consolidated: blend modes, position/total locks, double-click renaming, and independent layer exports.

Any contributions, suggestions, Pull Requests, or Issues are warmly welcomed!


Built with ❤️ by Ignicion Dev · GitHub · OpenCode · DeepSeek V4 Flash

About

Nexus Studio es un editor de diseño vectorial de escritorio que combina la potencia de un motor gráfico C++ nativo con inteligencia artificial local. Puedes describir lo que quieres dibujar en lenguaje natural y el software lo interpreta y lo renderiza al instante — sin depender de APIs

Topics

Resources

License

Stars

Watchers

Forks

Contributors

Languages