Commit 67d57f79a5a962297cbd5ac3d6797434356f5e99

Authored by ly525
1 parent 58cf6131

docs: add documents

Too many changes to show.

To preserve performance only 11 of 23 files are displayed.

.gitignore 0 → 100644
  1 +############################
  2 +# OS X
  3 +############################
  4 +
  5 +.DS_Store
  6 +.AppleDouble
  7 +.LSOverride
  8 +Icon
  9 +.Spotlight-V100
  10 +.Trashes
  11 +._*
  12 +
  13 +
  14 +############################
  15 +# Linux
  16 +############################
  17 +
  18 +*~
  19 +
  20 +
  21 +############################
  22 +# Windows
  23 +############################
  24 +
  25 +Thumbs.db
  26 +ehthumbs.db
  27 +Desktop.ini
  28 +$RECYCLE.BIN/
  29 +*.cab
  30 +*.msi
  31 +*.msm
  32 +*.msp
  33 +
  34 +
  35 +############################
  36 +# Packages
  37 +############################
  38 +
  39 +*.7z
  40 +*.csv
  41 +*.dat
  42 +*.dmg
  43 +*.gz
  44 +*.iso
  45 +*.jar
  46 +*.rar
  47 +*.tar
  48 +*.zip
  49 +*.com
  50 +*.class
  51 +*.dll
  52 +*.exe
  53 +*.o
  54 +*.seed
  55 +*.so
  56 +*.swo
  57 +*.swp
  58 +*.swn
  59 +*.swm
  60 +*.out
  61 +*.pid
  62 +
  63 +
  64 +############################
  65 +# Logs and databases
  66 +############################
  67 +
  68 +.tmp
  69 +*.log
  70 +*.sql
  71 +*.sqlite
  72 +
  73 +
  74 +############################
  75 +# Misc.
  76 +############################
  77 +
  78 +*#
  79 +.idea
  80 +nbproject
  81 +.vscode/
  82 +
  83 +
  84 +############################
  85 +# Node.js
  86 +############################
  87 +
  88 +lib-cov
  89 +lcov.info
  90 +pids
  91 +logs
  92 +results
  93 +build
  94 +node_modules
  95 +.node_history
  96 +package-lock.json
  97 +**/package-lock.json
  98 +!docs/package-lock.json
  99 +
  100 +
  101 +############################
  102 +# Tests
  103 +############################
  104 +
  105 +testApp
  106 +coverage
  107 +cypress/screenshots
  108 +cypress/videos
  109 +
  110 +
  111 +############################
  112 +# Documentation
  113 +############################
  114 +
  115 +dist
  116 +
  117 +############################
  118 +# Builds
  119 +############################
  120 +
  121 +packages/strapi-generate-new/files/public/
  122 +
  123 +############################
  124 +# Example app
  125 +############################
  126 +
  127 +# *.cache
  128 +
  129 +############################
  130 +# Visual Studio Code
  131 +############################
  132 +
  133 +front-workspace.code-workspace
0 \ No newline at end of file 134 \ No newline at end of file
README.md
1 -简体中文 | [English](./README.en.md) 1 +[中文在线文档](http://docs.luban-h5.surge.sh/) | [English](./README.en.md)
  2 +
2 3
3 目录 4 目录
4 - [鲁班H5是什么?](#%E9%B2%81%E7%8F%ADh5%E6%98%AF%E4%BB%80%E4%B9%88) 5 - [鲁班H5是什么?](#%E9%B2%81%E7%8F%ADh5%E6%98%AF%E4%BB%80%E4%B9%88)
@@ -9,8 +10,6 @@ @@ -9,8 +10,6 @@
9 * [前端组件说明](#%E5%89%8D%E7%AB%AF%E7%BB%84%E4%BB%B6%E8%AF%B4%E6%98%8E) 10 * [前端组件说明](#%E5%89%8D%E7%AB%AF%E7%BB%84%E4%BB%B6%E8%AF%B4%E6%98%8E)
10 * [技术栈(当前)](#%E6%8A%80%E6%9C%AF%E6%A0%88%E5%BD%93%E5%89%8D) 11 * [技术栈(当前)](#%E6%8A%80%E6%9C%AF%E6%A0%88%E5%BD%93%E5%89%8D)
11 - [👨🏻‍💻👩🏻‍💻交流群](#%E4%BA%A4%E6%B5%81%E7%BE%A4) 12 - [👨🏻‍💻👩🏻‍💻交流群](#%E4%BA%A4%E6%B5%81%E7%BE%A4)
12 -- [代码目录说明](#代码目录说明)  
13 - * [前端部分](#前端部分)  
14 13
15 ### 鲁班H5是什么? 14 ### 鲁班H5是什么?
16 鲁班H5是基于Vue2.0开发的,通过拖拽的形式,生成页面的工具,类似[易企秀](http://www.eqxiu.com/)、[百度 H5](https://h5.baidu.com) 等工具 15 鲁班H5是基于Vue2.0开发的,通过拖拽的形式,生成页面的工具,类似[易企秀](http://www.eqxiu.com/)、[百度 H5](https://h5.baidu.com) 等工具
@@ -87,103 +86,9 @@ @@ -87,103 +86,9 @@
87 --- 86 ---
88 87
89 ### 交流群 88 ### 交流群
90 -***  
91 因为微信群二维码会过期,所以 微信群和QQ群 的二维码请前往查看[鲁班-H5 微信群和QQ群](https://github.com/ly525/luban-h5/issues/57) 查看 89 因为微信群二维码会过期,所以 微信群和QQ群 的二维码请前往查看[鲁班-H5 微信群和QQ群](https://github.com/ly525/luban-h5/issues/57) 查看
92 -***  
93 90
94 #### 钉钉讨论组(推荐, 对代码排版相对友好) 91 #### 钉钉讨论组(推荐, 对代码排版相对友好)
95 -  
96 -> #!en: Scan the DingTalk QR code using [Dingtalk App](https://www.dingtalk.com)  
97 -  
98 -> For users in other languages, please keep using Github issue tracker. 🤟  
99 -  
100 <img src="https://user-images.githubusercontent.com/12668546/61447488-a379f700-a983-11e9-9956-139352a2585d.png" width="200px"> 92 <img src="https://user-images.githubusercontent.com/12668546/61447488-a379f700-a983-11e9-9956-139352a2585d.png" width="200px">
101 93
102 -  
103 -### 代码目录说明  
104 -#### 前端部分  
105 -> 推荐先看 router.js, 再从 front-end/h5/src/views/Editor.vue 开始了解,这里是编辑器的入口  
106 -  
107 - front-end/h5/src # 前端源码目录:包含编辑器、作品管理、表单统计等部分  
108 - ├── assets  
109 - │ ├── 403.svg  
110 - │ ├── 404.svg  
111 - │ ├── 500.svg  
112 - │ ├── logo.png  
113 - │ ├── placeholder-for-work.svg  
114 - │ └── unauth-page-illustration.svg  
115 - ├── components  
116 - │ ├── core # 核心部分  
117 - │ │ ├── editor # 编辑器模块  
118 - │ │ │ ├── canvas # 画布:编辑模式 + 快速预览模式  
119 - │ │ │ │ ├── edit.js # 编辑模式对应画布  
120 - │ │ │ │ └── preview.js # 快速预览模式对应的画布  
121 - │ │ │ ├── edit-panel # 编辑器右侧的编辑、配置面板  
122 - │ │ │ │ ├── action.js #  
123 - │ │ │ │ ├── props.js # 组件属性编辑面板  
124 - │ │ │ │ └── script.js # 自定义脚本  
125 - │ │ │ ├── header  
126 - │ │ │ ├── modals  
127 - │ │ │ │ └── preview.vue # 预览弹窗  
128 - │ │ │ ├── shortcuts-panel # 插件列表对应的快捷按钮  
129 - │ │ │ │ ├── index.js  
130 - │ │ │ │ └── shortcut-button.js  
131 - │ │ │ └── index.js  
132 - │ │ ├── models # 编辑器中的各种 model  
133 - │ │ │ ├── element.js # 插件在画布中对应的元素  
134 - │ │ │ ├── page.js # 页面  
135 - │ │ │ └── work.js # 整个H5作品  
136 - │ │ ├── styles  
137 - │ │ │ └── index.scss  
138 - │ │ └── support # 辅助支持部分  
139 - │ │ └── shape.js # 拖拽改变元素形状  
140 - │ ├── plugins # 插件列表:按钮、表单(提交按钮+输入框)、文字、图片  
141 - │ │ ├── lbp-button.js  
142 - │ │ ├── lbp-form-button.js  
143 - │ │ ├── lbp-form-input.js  
144 - │ │ ├── lbp-picture-placeholder.jpg  
145 - │ │ ├── lbp-picture.js  
146 - │ │ └── lbp-text.js  
147 - │ └── HelloWorld.vue  
148 - ├── constants # 常量配置  
149 - │ └── api.js # 后端 API 接口地址等配置  
150 - ├── mixins # 加载插件  
151 - │ └── load-plugins.js  
152 - ├── pages  
153 - │ ├── editor # 核心编辑器入口  
154 - │ ├── home  
155 - │ └── index  
156 - ├── store  
157 - │ ├── modules  
158 - │ │ ├── editor.js  
159 - │ │ ├── element.js  
160 - │ │ ├── loading.js  
161 - │ │ ├── page.js  
162 - │ │ ├── user.js  
163 - │ │ ├── visible.js  
164 - │ │ └── work.js  
165 - │ ├── plugins # vuex 插件  
166 - │ │ └── undo-redo # 撤销、重做  
167 - │ │ ├── History.js  
168 - │ │ └── index.js  
169 - │ └── index.js  
170 - ├── utils  
171 - │ ├── element.js  
172 - │ ├── http.js  
173 - │ └── strapi.js  
174 - ├── views  
175 - │ ├── work-manager  
176 - │ │ ├── form-stat  
177 - │ │ │ ├── column.js  
178 - │ │ │ ├── detail.vue  
179 - │ │ │ └── index.vue  
180 - │ │ ├── index.vue  
181 - │ │ └── list.vue  
182 - │ ├── About.vue  
183 - │ ├── Editor.vue # 编辑器入口,对核心编辑器做了一层包装,在这里加载插件列表  
184 - │ └── Home.vue  
185 - ├── App.vue  
186 - ├── engine-entry.js # 用于在手机端预览、查看H5作品的入口  
187 - ├── main.js # 编辑器 + work-manager(作品管理页面) 的入口  
188 - ├── registerServiceWorker.js  
189 - └── router.js # 页面路由 94 +更多细节请阅读[在线文档](http://docs.luban-h5.surge.sh/)
docs/.gitignore 0 → 100644
  1 +############################
  2 +# OS X
  3 +############################
  4 +
  5 +.DS_Store
  6 +.AppleDouble
  7 +.LSOverride
  8 +Icon
  9 +.Spotlight-V100
  10 +.Trashes
  11 +._*
  12 +
  13 +
  14 +############################
  15 +# Linux
  16 +############################
  17 +
  18 +*~
  19 +
  20 +
  21 +############################
  22 +# Windows
  23 +############################
  24 +
  25 +Thumbs.db
  26 +ehthumbs.db
  27 +Desktop.ini
  28 +$RECYCLE.BIN/
  29 +*.cab
  30 +*.msi
  31 +*.msm
  32 +*.msp
  33 +
  34 +
  35 +############################
  36 +# Packages
  37 +############################
  38 +
  39 +*.7z
  40 +*.csv
  41 +*.dat
  42 +*.dmg
  43 +*.gz
  44 +*.iso
  45 +*.jar
  46 +*.rar
  47 +*.tar
  48 +*.zip
  49 +*.com
  50 +*.class
  51 +*.dll
  52 +*.exe
  53 +*.o
  54 +*.seed
  55 +*.so
  56 +*.swo
  57 +*.swp
  58 +*.swn
  59 +*.swm
  60 +*.out
  61 +*.pid
  62 +
  63 +
  64 +############################
  65 +# Logs and databases
  66 +############################
  67 +
  68 +.tmp
  69 +*.log
  70 +*.sql
  71 +*.sqlite
  72 +
  73 +
  74 +############################
  75 +# Misc.
  76 +############################
  77 +
  78 +*#
  79 +.idea
  80 +nbproject
  81 +.vscode/
  82 +
  83 +
  84 +############################
  85 +# Node.js
  86 +############################
  87 +
  88 +lib-cov
  89 +lcov.info
  90 +pids
  91 +logs
  92 +results
  93 +build
  94 +node_modules
  95 +.node_history
  96 +package-lock.json
  97 +**/package-lock.json
  98 +!docs/package-lock.json
  99 +
  100 +
  101 +############################
  102 +# Tests
  103 +############################
  104 +
  105 +testApp
  106 +coverage
  107 +cypress/screenshots
  108 +cypress/videos
  109 +
  110 +
  111 +############################
  112 +# Documentation
  113 +############################
  114 +
  115 +dist
  116 +
  117 +############################
  118 +# Builds
  119 +############################
  120 +
  121 +############################
  122 +# Example app
  123 +############################
  124 +
  125 +# *.cache
  126 +
  127 +############################
  128 +# Visual Studio Code
  129 +############################
  130 +
  131 +front-workspace.code-workspace
0 \ No newline at end of file 132 \ No newline at end of file
docs/.vuepress/config.js 0 → 100755
  1 +const container = require('markdown-it-container');
  2 +
  3 +const ogprefix = 'og: http://ogp.me/ns#';
  4 +const title = '鲁班H5 文档';
  5 +const description = '前后端均开源的H5制作平台,类似易企秀、百度H5、Maka、人人秀.';
  6 +const color = '#2F80ED';
  7 +const author = 'ly525';
  8 +const url = 'http://docs.huban-h5.surge.sh/';
  9 +
  10 +module.exports = {
  11 + head: [
  12 + ['link', { rel: 'icon', href: `/luban-logo.png` }],
  13 + ['meta', { name: 'theme-color', content: color }],
  14 + ['meta', { prefix: ogprefix, property: 'og:title', content: title }],
  15 + ['meta', { prefix: ogprefix, property: 'twitter:title', content: title }],
  16 + ['meta', { prefix: ogprefix, property: 'og:type', content: 'article' }],
  17 + ['meta', { prefix: ogprefix, property: 'og:url', content: url }],
  18 + [
  19 + 'meta',
  20 + { prefix: ogprefix, property: 'og:description', content: description },
  21 + ],
  22 + [
  23 + 'meta',
  24 + { prefix: ogprefix, property: 'og:image', content: `${url}luban-logo.png` },
  25 + ],
  26 + [
  27 + 'meta',
  28 + { prefix: ogprefix, property: 'og:article:author', content: author },
  29 + ],
  30 + ['meta', { name: 'apple-mobile-web-app-capable', content: 'yes' }],
  31 + [
  32 + 'meta',
  33 + { name: 'apple-mobile-web-app-status-bar-style', content: 'black' },
  34 + ],
  35 + // ['link', { rel: 'apple-touch-icon', href: `/assets/apple-touch-icon.png` }],
  36 + // ['link', { rel: 'mask-icon', href: '/assets/safari-pinned-tab.svg', color: color }],
  37 + ['meta', { name: 'msapplication-TileImage', content: '/luban-logo.png' }],
  38 + ['meta', { name: 'msapplication-TileColor', content: color }],
  39 + ['script', { src: '/yandex.js' }],
  40 + ],
  41 + markdown: {
  42 + anchor: {
  43 + permalink: true,
  44 + },
  45 + // config: md => {
  46 + // md.use(require('markdown-it-decorate')) // https://github.com/vuejs/vuepress/issues/986
  47 + // .use(require('markdown-it-task-lists'))
  48 + // .use(...createContainer('intro'))
  49 + // .use(...createContainer('windows'))
  50 + // .use(...createContainer('ubuntu'))
  51 + // .use(...createContainer('mac'))
  52 + // .use(...createContainer('note'));
  53 + // const vuepressTabs = require('vuepress-tabs');
  54 + // vuepressTabs(md);
  55 + // },
  56 + },
  57 + extendMarkdown (md) {
  58 + md.use(require('markdown-it-decorate')) // https://github.com/vuejs/vuepress/issues/986
  59 + .use(require('markdown-it-task-lists'))
  60 + .use(...createContainer('intro'))
  61 + .use(...createContainer('windows'))
  62 + .use(...createContainer('ubuntu'))
  63 + .use(...createContainer('mac'))
  64 + .use(...createContainer('note'));
  65 + const vuepressTabs = require('vuepress-tabs');
  66 + vuepressTabs(md);
  67 + },
  68 + title,
  69 + description,
  70 + base: '/', // why '/documentation' not work for surge.sh
  71 + // ga: '',
  72 + themeConfig: {
  73 + nav: [
  74 + { text: 'Website', link: 'https://ly525.github.io/luban-h5' },
  75 + ],
  76 + versions: [
  77 + ['zh', '/zh/'],
  78 + ['en', '/en/'],
  79 + ],
  80 + repo: 'ly525/luban-h5',
  81 + // website: 'https://ly525.github.io/luban-h5',
  82 + // slack: 'https://github.com/ly525/luban-h5',
  83 + // blog: 'https://github.com/ly525/luban-h5',
  84 + // liveDemo: 'https://ly525.github.io/luban-h5',
  85 + docsDir: 'docs',
  86 + // algolia: {
  87 + // apiKey: '0d43b0d883366a06e0f2ff8fe988ae51',
  88 + // indexName: 'luban-h5-docs',
  89 + // },
  90 + editLinks: true,
  91 + editLinkText: 'Improve this page',
  92 + serviceWorker: true,
  93 + hiddenLinks: [
  94 + '/zh/cli/CLI.html',
  95 + '/zh/api-reference/reference.html',
  96 + ],
  97 + sidebar: {
  98 + '/zh/': [
  99 + {
  100 + collapsable: false,
  101 + title: '🚀 Getting started',
  102 + children: [
  103 + '/zh/getting-started/introduction',
  104 + '/zh/getting-started/features',
  105 + '/zh/getting-started/quick-start',
  106 + '/zh/getting-started/code-structure',
  107 + '/zh/getting-started/deployment',
  108 + '/zh/getting-started/feedback',
  109 + '/zh/getting-started/qa',
  110 + '/zh/getting-started/discussion',
  111 + ],
  112 + },
  113 + {
  114 + collapsable: true,
  115 + title: '💡 实现思路',
  116 + children: [
  117 + '/zh/guides/form-submit',
  118 + ],
  119 + },
  120 + {
  121 + collapsable: true,
  122 + title: '🔌 Local plugins',
  123 + children: [
  124 + '/zh/plugin-development/quick-start',
  125 + ],
  126 + },
  127 + // {
  128 + // collapsable: false,
  129 + // title: '📚 Resources',
  130 + // children: [
  131 + // [
  132 + // 'https://github.com/ly525/luban-h5-docs/blob/master/CONTRIBUTING.md',
  133 + // 'Contributing guide',
  134 + // ],
  135 + // '/zh/migration-guide/',
  136 + // ],
  137 + // },
  138 + ],
  139 + },
  140 + },
  141 + plugins: {
  142 + '@vssue/vuepress-plugin-vssue': {
  143 + // 设置 `platform` 而不是 `api`
  144 + platform: 'github',
  145 + locale: 'zh',
  146 +
  147 + // 其他的 Vssue 配置
  148 + owner: 'ly525',
  149 + repo: 'luban-h5-community',
  150 + clientId: '95a13445d2ed9ca9a800',
  151 + clientSecret: '08bbe2bf798d61f2814c8d4914c5fff145f4904e',
  152 + prefix: '[From Comment]',
  153 + },
  154 + },
  155 +};
  156 +
  157 +function createContainer(className) {
  158 + return [
  159 + container,
  160 + className,
  161 + {
  162 + render(tokens, idx) {
  163 + const token = tokens[idx];
  164 + if (token.nesting === 1) {
  165 + return `<div class="${className} custom-block">\n`;
  166 + } else {
  167 + return `</div>\n`;
  168 + }
  169 + },
  170 + },
  171 + ];
  172 +}
docs/.vuepress/enhanceApp.js 0 → 100755
  1 +import Tabs from 'vue-tabs-component'
  2 +
  3 +export default (({
  4 + Vue, // the version of Vue being used in the VuePress app
  5 + options, // the options for the root Vue instance
  6 + router, // the router instance for the app
  7 + siteData // site metadata
  8 + }) => {
  9 + //...
  10 + Vue.use(Tabs)
  11 + //...
  12 + })
0 \ No newline at end of file 13 \ No newline at end of file
docs/.vuepress/public/gif-demo.gif 0 → 100644

513 KB

docs/.vuepress/public/luban-logo.png 0 → 100644

105 KB

docs/.vuepress/public/yandex.js 0 → 100644
  1 +(function(m,e,t,r,i,k,a){m[i]=m[i]||function(){(m[i].a=m[i].a||[]).push(arguments)};
  2 +m[i].l=1*new Date();k=e.createElement(t),a=e.getElementsByTagName(t)[0],k.async=1,k.src=r,a.parentNode.insertBefore(k,a)})
  3 +(window, document, "script", "https://mc.yandex.ru/metrika/tag.js", "ym");
  4 +
  5 +ym(55036354, "init", {
  6 + clickmap:true,
  7 + trackLinks:true,
  8 + accurateTrackBounce:true,
  9 + webvisor:true,
  10 + trackHash:true
  11 +});
0 \ No newline at end of file 12 \ No newline at end of file
docs/.vuepress/styles/index.styl 0 → 100644
  1 +.contains-task-list li {
  2 + list-style-type: none;
  3 +}
0 \ No newline at end of file 4 \ No newline at end of file
docs/README.md 0 → 100755
  1 +---
  2 +meta:
  3 + - http-equiv: refresh
  4 + content: 0;url=/zh/
  5 +---
docs/package.json 0 → 100755
  1 +{
  2 + "name": "docs",
  3 + "version": "1.0.0",
  4 + "description": "",
  5 + "main": "index.js",
  6 + "scripts": {
  7 + "dev": "vuepress dev",
  8 + "docs:build": "vuepress build"
  9 + },
  10 + "author": "",
  11 + "license": "ISC",
  12 + "dependencies": {
  13 + "@vssue/api-github-v3": "^1.0.0",
  14 + "@vssue/vuepress-plugin-vssue": "^1.0.2",
  15 + "cache-loader": "1.2.2",
  16 + "directory-tree": "^2.1.0",
  17 + "markdown-it-decorate": "^1.2.2",
  18 + "markdown-it-task-lists": "^2.1.1",
  19 + "vue-tabs-component": "^1.5.0",
  20 + "vuepress": "^1.0.3",
  21 + "vuepress-tabs": "^0.1.6"
  22 + },
  23 + "devDependencies": {
  24 + "markdown-it-container": "^2.0.0"
  25 + }
  26 +}