gissen

Headless visual editor and renderer for Vue 3.
1,791 35
Install
npm install gissen@0.0.1
Latest Version:0.0.1
License:MIT
Last Updated:Oct 18, 2026
Links: GitHub  ·  npm
Maintainer: yukos1221

Gissen

The headless visual editor for Vue. Agent-native, self-hostable, MIT-licensed.

Pre-alpha — APIs are unstable. Do not use in production yet.

Gissen lets you register your existing Vue 3 components with a typed config object so end-users (or AI agents, via an MCP server) can drag and drop them onto a canvas to build pages. The output is plain JSON that you render back into real Vue components.

It is the Vue equivalent of Puck.

Install

npm install gissen

Requires Vue 3.4+.

Quick start

1. Define a config

// gissen.config.ts
import { defineGissenConfig } from 'gissen'
import Hero from './components/Hero.vue'

export default defineGissenConfig({
  components: {
    Hero: {
      fields: {
        title: { type: 'text', label: 'Title' },
        subtitle: { type: 'textarea', label: 'Subtitle' },
        cta: {
          type: 'select',
          label: 'CTA',
          options: [
            { label: 'Sign up', value: 'signup' },
            { label: 'Buy now', value: 'buy' },
          ] as const,
        },
      },
      defaultProps: { title: 'Hello', subtitle: '', cta: 'signup' },
      render: Hero,
    },
  },
})

2. Drop in the editor

<script setup lang="ts">
import type { GissenData } from 'gissen'
import { GissenEditor } from 'gissen'
import { ref } from 'vue'
import config from './gissen.config'
import 'gissen/style.css'

const data = ref<GissenData>({ root: { props: {} }, content: [] })
</script>

<template>
  <GissenEditor v-model:data="data" :config="config" style="height: 100vh;" />
</template>

data is plain JSON — persist it however you like (database, file, API).

Documentation

Full docs at gissen.dev — Config API reference, slot components, keyboard shortcuts, theming.

Status

Feature Status
Editor canvas with drag-and-drop ✓ Available
Keyboard shortcuts (Escape / Delete) ✓ Available
Properties panel ✓ Available
Production renderer (<GissenRender>) ✓ Available
MCP server for AI agents (gissen-mcp) ✓ Available

License

MIT

Related Packages

vue-page-composer

Visual page editor and renderer for Vue. Register the components you already shi...

1,731 0
@revenexx/editor

revenexx hard fork of blökkli — interactive page building experience for Nuxt. I...

3,495
gissen-mcp

Model Context Protocol server for Gissen, enabling AI agents to build pages.

415 36
lf-pagebuilder-vue

Constructor de páginas visual basado en Vue.js que permite crear y diseñar págin...

18,701
nuxt-microcms-module

microCMS integration for Nuxt.js

23,457 29

Version History

Version Released License
0.0.1 MIT
Pre-releases (8)
Version Released Vue License
0.1.0-alpha.7 ^3.4.0 MIT
0.1.0-alpha.6 ^3.4.0 MIT
0.1.0-alpha.5 ^3.4.0 MIT
0.1.0-alpha.4 ^3.4.0 MIT
0.1.0-alpha.3 ^3.4.0 MIT