███╗ ██╗███████╗██╗ ██╗██╗ ██╗███████╗ ███████╗████████╗██╗ ██╗██████╗ ██╗ ██████╗
████╗ ██║██╔════╝╚██╗██╔╝██║ ██║██╔════╝ ██╔════╝╚══██╔══╝██║ ██║██╔══██╗██║██╔═══██╗
██╔██╗ ██║█████╗ ╚███╔╝ ██║ ██║███████╗ ███████╗ ██║ ██║ ██║██║ ██║██║██║ ██║
██║╚██╗██║██╔══╝ ██╔██╗ ██║ ██║╚════██║ ╚════██║ ██║ ██║ ██║██║ ██║██║██║ ██║
██║ ╚████║███████╗██╔╝ ██╗╚██████╔╝███████║ ███████║ ██║ ╚██████╔╝██████╔╝██║╚██████╔╝
╚═╝ ╚═══╝╚══════╝╚═╝ ╚═╝ ╚═════╝ ╚══════╝ ╚══════╝ ╚═╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═════╝Editor SVG profesional con pipeline NLP dual (Ollama + rapidfuzz) y motor de capas Photopea-style
Creado por Ignicion Dev — 3 años de ingeniería de prompt autodidacta | Agente: OpenCode | Modelo: DeepSeek V4 Flash
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.
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 |
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.
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 |
- 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_defaultcontra XXE - Undo/Redo: Historial completo de snapshots XML con
commitState()
QSignalBlockerRAII + banderasm_isRefreshing+ debounce 150ms en PropertiesWidget- Coordinación perfecta entre Canvas ↔ Propiedades ↔ Editor XML
- 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
- 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
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
| 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.
./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 |
sudo apt update
sudo apt install qt6-base-dev libqt6svg6-dev libvulkan-devchmod +x build.sh && ./build.sh./build/NexusStudio./build/NexusStudio --cli "dibuja ondas cosmicas con degradado ocean" --output mi_arte.svgEste 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.
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!