Giter Club home page Giter Club logo

luban-h5's Introduction

简体中文 | English

目录

鲁班H5是什么?

鲁班H5是基于Vue2.0开发的,通过拖拽的形式,生成页面的工具,类似易企秀百度 H5 等工具

Screenshots

在线访问地址

更多作品演示图片,点击查看

image image

Features

  1. 编辑器

    • 参考线
    • 吸附线、组件对齐
    • 拖拽改变组件形状
    • 元素: 复制(画布)
    • 元素: 删除(画布)
    • 元素: 编辑(画布)
    • 页面:新增
    • 页面:复制
    • 页面:删除
    • 快速预览
    • 撤销、重做
  2. 组件系统

    • 文字
    • 普通按钮
    • 表单按钮
    • 表单输入框
    • 普通图片
    • 背景图
    • 视频(Iframe形式)
  3. 增强功能

    • 上传 PSD,一键转换为 H5(已经调研,可以实现)
    • 图片库
    • 第三方无版权图片搜索
    • 自定义脚本(已经调研,可以实现)
  4. 后端 API

    • 创建、保存、更新作品
    • 表单数据收集
    • 表单数据展示
    • 在线预览
    • 二维码预览

安装

说明:project:项目根目录

  1. 前端

    1. 编辑器部分请参照 project/front-end/h5/README.md
  2. 后端

    1. 后端 API 部分请参照 project/back-end/h5-api/README.md

更多说明

前端组件说明

  1. lbp- 全称为 lu-ban-plugin-, 意思为 鲁班H5的插件,位置:front-end/h5/src/components/plugins

技术栈(当前)

  1. 前端:Vue.js
  2. 后端:Strapi
  3. 存储:Sqlite

交流群

钉钉讨论组(推荐) 和 QQ讨论组 (QQ 群号:251936377)

#!en: Scan the DingTalk QR code using Dingtalk App or Scan the QQ QR code using QQ App to join in discussion group

For users in other languages, please keep using Github issue tracker. 🤟

代码目录说明

前端部分

推荐先看 router.js, 再从 front-end/h5/src/views/Editor.vue 开始了解,这里是编辑器的入口

front-end/h5/src                # 前端源码目录:包含编辑器、作品管理、表单统计等部分
├── assets
│   ├── 403.svg
│   ├── 404.svg
│   ├── 500.svg
│   ├── logo.png
│   ├── placeholder-for-work.svg
│   └── unauth-page-illustration.svg
├── components
│   ├── core                    # 核心部分
│   │   ├── editor              # 编辑器模块
│   │   │   ├── canvas          # 画布:编辑模式 + 快速预览模式
│   │   │   │   ├── edit.js     # 编辑模式对应画布
│   │   │   │   └── preview.js  # 快速预览模式对应的画布
│   │   │   ├── edit-panel      # 编辑器右侧的编辑、配置面板
│   │   │   │   ├── action.js   #
│   │   │   │   ├── props.js    # 组件属性编辑面板
│   │   │   │   └── script.js   # 自定义脚本
│   │   │   ├── header
│   │   │   ├── modals
│   │   │   │   └── preview.vue # 预览弹窗
│   │   │   ├── shortcuts-panel # 插件列表对应的快捷按钮
│   │   │   │   ├── index.js
│   │   │   │   └── shortcut-button.js
│   │   │   └── index.js
│   │   ├── models              # 编辑器中的各种 model
│   │   │   ├── element.js      # 插件在画布中对应的元素
│   │   │   ├── page.js         # 页面
│   │   │   └── work.js         # 整个H5作品
│   │   ├── styles
│   │   │   └── index.scss
│   │   └── support             # 辅助支持部分
│   │       └── shape.js        # 拖拽改变元素形状
│   ├── plugins                 # 插件列表:按钮、表单(提交按钮+输入框)、文字、图片
│   │   ├── lbp-button.js
│   │   ├── lbp-form-button.js
│   │   ├── lbp-form-input.js
│   │   ├── lbp-picture-placeholder.jpg
│   │   ├── lbp-picture.js
│   │   └── lbp-text.js
│   └── HelloWorld.vue
├── constants                  # 常量配置
│   └── api.js                 # 后端 API 接口地址等配置
├── mixins                     # 加载插件
│   └── load-plugins.js
├── pages
│   ├── editor                 # 核心编辑器入口
│   ├── home
│   └── index
├── store
│   ├── modules
│   │   ├── editor.js
│   │   ├── element.js
│   │   ├── loading.js
│   │   ├── page.js
│   │   ├── user.js
│   │   ├── visible.js
│   │   └── work.js
│   ├── plugins               # vuex 插件
│   │   └── undo-redo         # 撤销、重做
│   │       ├── History.js
│   │       └── index.js
│   └── index.js
├── utils
│   ├── element.js
│   ├── http.js
│   └── strapi.js
├── views
│   ├── work-manager
│   │   ├── form-stat
│   │   │   ├── column.js
│   │   │   ├── detail.vue
│   │   │   └── index.vue
│   │   ├── index.vue
│   │   └── list.vue
│   ├── About.vue
│   ├── Editor.vue           # 编辑器入口,对核心编辑器做了一层包装,在这里加载插件列表
│   └── Home.vue
├── App.vue
├── engine-entry.js          # 用于在手机端预览、查看H5作品的入口
├── main.js                  # 编辑器 + work-manager(作品管理页面) 的入口
├── registerServiceWorker.js
└── router.js                # 页面路由

luban-h5's People

Contributors

dependabot[bot] avatar ly525 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.