diff --git a/components/Editor.vue b/components/Editor.vue
new file mode 100644
index 00000000..2912a75f
--- /dev/null
+++ b/components/Editor.vue
@@ -0,0 +1,157 @@
+
+ .editor(:class='{ "with-border": border }')
+ editor-menu-bar.menubar(:editor='editor' v-slot='{ commands, isActive, getMarkAttrs, focused }')
+ el-button-group
+ el-popover(trigger='hover' placement='bottom-start')
+ el-button.float-left(slot='reference' size='mini')
+ template
+ div → Title ⇒ ctrl+shift+4 or start a line with #
+ div → Bold ⇒ ctrl+b
+ div → Italic ⇒ ctrl+i
+ div → Underline ⇒ ctrl+u
+ div → List ⇒ ctrl+shift+8 or start a line with -
+ div → Ordered List ⇒ ctrl+shift+9 or start a line with 1.
+ div → Quote ⇒ ctrl+shift+> or start a line with >
+ div → Link ⇒ Select a word and fill the input
+ el-button(size='mini' :class='{ "is-active": isActive.heading({level:4})}' @click='commands.heading({level: 4})')
+ el-button(size='mini' :class='{ "is-active": isActive.bold() }' @click='commands.bold')
+
+ el-button(size='mini' :class='{ "is-active": isActive.italic() }' @click='commands.italic')
+ el-button(size='mini' :class='{ "is-active": isActive.underline() }' @click='commands.underline')
+ el-button(size='mini' :class='{ "is-active": isActive.link() }' @click='commands.link({href: ""}); $refs.link.focus(); linkActive=true')
+ input(:value='isActive.link() && getMarkAttrs("link") && getMarkAttrs("link").href || ""' ref='link' :class='{ "is-active": isActive.link() || linkActive }'
+ @blur='commands.link({ href: $event.target.value})' @keypress.enter='commands.link({ href: $event.target.value})')
+ //- el-button(size='mini' :class='{ "is-active": isActive.strike() }' @click='commands.strike')
+ //- br
+ //- el-button-group
+ //- el-button(size='mini' :class='{ "is-active": isActive.code() }' @click='commands.code')
+ //- el-button(size='mini' :class='{ "is-active": isActive.bullet_list() }' @click='commands.bullet_list')
+ //- //- el-button(size='mini' :class='{ "is-active": isActive.ordered_list() }' @click='commands.ordered_list')
+ //- el-button(size='mini' :class='{ "is-active": isActive.blockquote() }' @click='commands.blockquote')
+
+ //- el-button.float-right(v-if='!noSave' size='mini' type='success' plain icon='el-icon-check'
+ //- @click='$emit("save", editor.getHTML())') {{$t('common.save')}}
+
+ editor-content.content(:editor='editor' spellcheck='false')
+
+
+