Ctrl K
ComunidadGuías…
GITHUB · ANALIZADO

opencanvas

OpenCanvas es una aplicación de escritorio que transforma respuestas de LLM en widgets interactivos arrastrables sobre un canvas infinito. Soporta modelos locales (Ollama) y cloud, con MCP-native para conectar filesystem, GitHub o Jira. Incluye SQLite+sqlite-vec para memoria persistente y API REST/S

Ficha actualizada 27 sept 2026, 7:33 · upstream 27 sept 2026, 7:18 · release v0.1.0

Ver códigoProblemas y ayudaRepositorio ↗Sitio oficial
00

Qué es opencanvas

Descripción editorial construida a partir del repositorio, su documentación y sus señales de mantenimiento.

OpenCanvas es una aplicación de escritorio que transforma las respuestas de los LLM en widgets interactivos arrastrables sobre un canvas infinito. En lugar de recibir texto plano, el usuario obtiene gráficos Vega-Lite, kanbans, timers en vivo y otros elementos como objetos reales que se pueden pinar, vincular y exportar.

La arquitectura combina React con Electron para el frontend, Node.js y Python para el backend, y Hono como framework. Utiliza SQLite + sqlite-vec para persistencia de datos y memoria vectorial local. Soporta 15 tipos de widgets predefinidos y permite registrar nuevos mediante descripciones en el esquema.

Es MCP-native, lo que significa que puede conectarse a servidores MCP para acceder al filesystem, GitHub, Jira u otras fuentes externas. Incluye una API REST y un bus SSE para que scripts externos o cron jobs puedan colocar widgets automáticamente. Soporta modelos locales como Ollama sin necesidad de API keys.

CASOS DE USO
  • Visualización interactiva de datos generados por LLM con gráficos Vega-Lite arrastrables
  • Gestión de proyectos mediante kanbans colocados dinámicamente desde prompts
  • Automatización de flujos de trabajo conectando MCP servers (filesystem, GitHub, Jira)
  • Análisis de código en sandbox HTML seguro con null-origin para modelos externos
  • Recordatorios y timers programables sin llamar al modelo (instant widgets)
PUNTOS DESTACADOS
  • MCP-native: conecta con cualquier servidor MCP sin limitación a proveedores específicos
  • Memoria compuesta en SQLite+sqlite-vec que indexa widgets de todas las conversaciones
  • Instant widgets: timers, notas y conversiones se colocan sin llamar al modelo
  • API REST + SSE para automatización externa desde scripts o cron jobs
  • Sandbox HTML con null-origin para ejecutar código generado por el modelo de forma segura
PRECAUCIONES
  • Requiere Node.js y Python instalados; no es solo Docker (tiene Dockerfile pero sin compose)
  • Bind a localhost por defecto (127.0.0.1); para producción necesita configuración adicional
  • Base de datos SQLite local; no soporta distribución multi-nodo o clustering
  • Necesita configurar manualmente los providers MCP en .env
VISUAL

Capturas del proyecto

Imágenes reales detectadas en la documentación del repositorio.

demoOpenCanvas
01

Perfil de infraestructura

Estimación inicial derivada del repositorio y de los servicios detectados.

CPU4 vCPUrecomendación inicial
MEMORIA8 GBRAM estimada
DISCO10 GBalmacenamiento base
COMPLEJIDADmediumnivel de operación
02

Despliegue detectado

Qué señales reales de instalación hemos encontrado.

Docker detectado

Clona el repo, ejecuta `pnpm install` y copia `.env.example` a `.env`. Añade las claves de provider necesarias. Ejecuta `pnpm electron:dev` para desarrollo o `pnpm dev` para http://127.0.0.1:3458. Los puertos 3457 y 3458 deben estar libres. Para producción, configura el bind address y revisa SECURITY.md.

✓Dockerfile
—Compose
—One-click
03

Stack y dependencias

Componentes inferidos a partir de manifests, configuración y documentación.

FRAMEWORKS
ReactNode.jsPython
SERVICIOS
No detectados
BASES DE DATOS
No detectadas
PUERTOS
34583457
05

Puede sustituir a

Relaciones detectadas por el análisis del repositorio y su categoría.

06

Experiencia real de la comunidad

Ayuda a contrastar la estimación automática con instalaciones reales.

Todavía no hay datos comunitarios para este proyecto.