# vue-page-designer-daniildeveloperforks

> A vue component for drag-and-drop to design and build mobile website.

Latest version **0.7.1** (published 2018-05-12) · 0 weekly downloads

## Install

```sh
npm install vue-page-designer-daniildeveloperforks
pnpm add vue-page-designer-daniildeveloperforks
yarn add vue-page-designer-daniildeveloperforks
bun add vue-page-designer-daniildeveloperforks
```

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support; pre 1.0.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.7.1 |
| Published | 2018-05-12 |
| First published | 2018-05-12 |
| Weekly downloads | 0 |
| TypeScript types | none |
| Module format | CommonJS |
| Node | >= 4.0.0 |
| Dependencies | 5 |
| Unpacked size | 11 KB |
| Known vulnerabilities | 0 (+4 in 2 direct dependencies) |
| Install scripts | no |
| GitHub stars | 0 |
| Author | daniildeveloper |
| Maintainers | daniildeveloper |

## Links

- npm: https://www.npmjs.com/package/vue-page-designer-daniildeveloperforks
- Repository: https://github.com/daniildeveloperforks/vue-page-designer
- Homepage: https://github.com/daniildeveloperforks/vue-page-designer#readme
- Issues: https://github.com/daniildeveloperforks/vue-page-designer/issues
- npm.io page: https://npm.io/package/vue-page-designer-daniildeveloperforks

## Dependencies (5)

- [vue](https://npm.io/package/vue.md) ^2.5.11
- [nanoid](https://npm.io/package/nanoid.md) ^1.0.1
- [vue-i18n](https://npm.io/package/vue-i18n.md) ^7.6.0
- [spectre.css](https://npm.io/package/spectre.css.md) ^0.5.0
- [vue-page-designer-widgets](https://npm.io/package/vue-page-designer-widgets.md) ^0.1.1

## Recent versions

- 0.7.1 (latest) — 2018-05-12

## README

# vue-page-designer

<p align="center">
  <a href="https://fireyy.github.io/vue-page-designer/" target="_blank">
    <img src="screen.png" width="700px">
    <br>
    Live Demo
  </a>
</p>

A drag-and-drop mobile website builder base on Vue.

## Install

```bash
yarn add vue-page-designer
```

You can start it quickly:

```html
<template>
  <div id="app">
    <vue-page-designer />
  </div>
</template>

<script>
import vuePageDesigner from 'vue-page-designer'

export default {
  components: {
    vuePageDesigner
  }
}
</script>

<style>
#app {
  height: 100%;
}
</style>
```

A [example](https://fireyy.github.io/vue-page-designer/) ▶️, and [source](./example/). Also a [custom widget source](./example/widgets)

# Options

You can add custom components, save callback.

| Props | Type | Description |
| -------- | -------- | -------- |
| value | `Object` | Editor initial value, you can pass the value of the save callback and resume the draft |
| widgets | `Object` | Vue Components. Custom components for editor. see [Example](https://github.com/fireyy/vue-page-designer-widgets/blob/master/src/index.js) |
| save | `(data) => void` | When you click the Save button, feed back to you to save the data |
| upload | `(files) => Promise` | Editor upload function, allowing you to implement your own upload-file's request |

## Parameter: `value`

The `value` came from `save`.

```html
<template>
  <div id="app">
    <vue-page-designer :value="value" />
  </div>
</template>
```

## Parameter: `widgets`

You can install default widget in `vue-page-designer-widgets`

```bash
yarn add vue-page-designer-widgets
```

Import and use it

```html
<template>
  <div id="app">
    <vue-page-designer :widgets="widgets" />
  </div>
</template>
<script>
import vuePageDesigner from 'vue-page-designer'
import widgets from './widgets'

export default {
  data () {
    return {
      widgets
    }
  },

  components: {
    vuePageDesigner
  }
}
</script>
```

## Parameter: `save`

```html
<template>
  <div id="app">
    <vue-page-designer @save="(data) => { console.log('send the value data to your server', data) }" />
  </div>
</template>
```

## Parameter: `upload`

```html
<template>
  <div id="app">
    <vue-page-designer :upload="upload" />
  </div>
</template>
<script>
import vuePageDesigner from 'vue-page-designer'

export default {
  methods: {
    upload (files) {
      return yourApiUpload(files).then(res => {
        return res.data
      }).catch(err => {
        console.log(err)
      })
    }
  },
  components: {
    vuePageDesigner
  }
}
</script>
```

---
_Source: https://npm.io/package/vue-page-designer-daniildeveloperforks · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
