MCPcopy
hub / github.com/buqiyuan/vite-vue3-lowcode

github.com/buqiyuan/vite-vue3-lowcode @main sqlite

repository ↗ · DeepWiki ↗
199 symbols 636 edges 110 files 0 documented · 0%
README

base on Vite2.x + Vue3.x + TypeScript H5 Low code platform

license

English | 中文

Clone the main branch and ignore irrelevant branches such as git-pages

git clone --single-branch https://github.com/buqiyuan/vite-vue3-lowcode.git

technology stack

Function List

  • [x] Add pages dynamically
  • [x] Drag and drop components
  • [ ] service worker + indexeddb Implement server-free front-end interaction
  • [ ] DataSource Admin Console
  • [ ] Provide preset functions
  • [ ] More component encapsulation
  • [ ] Others...

Generate component properties quickly

// 在vant文档中 chrome控制台输入以下代码,快速生成组件属性
let propObj = {
  string: (config) => `createEditorInputProp(${JSON.stringify(config)})`,
  number: (config) => `createEditorInputNumberProp(${JSON.stringify(config)})`,
  boolean: (config) => `createEditorSwitchProp(${JSON.stringify(config)})`
}

JSON.stringify(
  $$('#props + table tbody tr').reduce((prev, curr) => {
    const children = curr.children
    const key = children[0].textContent.replace(/-([a-z])/g, (all, i) => i.toUpperCase())
    const child3Text = children[3].textContent
    const defaultValue = ['true', 'false'].includes(child3Text)
      ? child3Text
      : `'${child3Text == '-' ? '' : child3Text}'`
    const value = (propObj[children[2].textContent] ?? propObj['string'])({
      label: `'${children[1].textContent}'`,
      defaultValue
    }).replaceAll('"', '')
    prev[key] = value
    return prev
  }, {})
).replaceAll('"', '')
// 在vant文档中 chrome控制台输入以下代码,快速生成组件事件
JSON.stringify(
  $$('#events + table tbody tr').reduce((prev, curr) => {
    const children = curr.children
    const event = {
      label: children[1].textContent,
      value: children[0].textContent
    }
    return prev.concat([event])
  }, [])
)
  .replaceAll(/(?<!:)\"(?!,|})/g, '')
  .replace(/\"/g, "'")

Browser support

The Chrome 80+ browser is recommended for local development

Support modern browsers, not IE

|  Edge

IE |  Edge

Edge | Firefox

Firefox | Chrome

Chrome | Safari

Safari | | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | | not support | last 2 versions | last 2 versions | last 2 versions | last 2 versions |

Git Contribution submission specification

  • feat Add new features
  • fix Fix the problem/BUG
  • style The code style is related and does not affect the running result
  • perf Optimization/performance improvement
  • refactor Refactor
  • revert Undo edit
  • test Test related
  • docs Documentation/notes
  • chore Dependency update/scaffolding configuration modification etc.
  • workflow Workflow improvements
  • ci Continuous integration
  • types Type definition file changes
  • wip In development

QUICK START

Install and use

npm install
# or
yarn add

run

npm run dev

build

npm run build

Extension points exported contracts — how you extend this code

GlobalComponents (Interface)
(no doc)
components.d.ts
ChangeEvent (Interface)
(no doc)
types/global.d.ts
Title18n (Interface)
(no doc)
types/vue-router.d.ts
ImportMetaEnv (Interface)
(no doc)
types/env.d.ts
State (Interface)
(no doc)
types/vuex.d.ts
Fn (Interface)
(no doc)
types/index.d.ts
IntrinsicElements (Interface)
(no doc)
types/shims/shims-tsx.d.ts
SlotItem (Interface)
(no doc)
src/packages/container-component/layout/index.tsx

Core symbols most depended-on inside this repo

createEditorInputProp
called by 108
src/visual-editor/visual-editor.props.tsx
createEditorSwitchProp
called by 99
src/visual-editor/visual-editor.props.tsx
createEditorSelectProp
called by 33
src/visual-editor/visual-editor.props.tsx
useGlobalProperties
called by 19
src/hooks/useGlobalProperties.ts
registerRef
called by 19
src/hooks/useGlobalProperties.ts
createEditorInputNumberProp
called by 13
src/visual-editor/visual-editor.props.tsx
createEditorColorProp
called by 11
src/visual-editor/visual-editor.props.tsx
createSlots
called by 9
src/packages/container-component/layout/index.tsx

Shape

Function 145
Interface 43
Enum 9
Class 2

Languages

TypeScript100%

Modules by API surface

src/visual-editor/utils/is.ts20 symbols
src/visual-editor/hooks/useVisualData.ts18 symbols
src/visual-editor/visual-editor.props.tsx17 symbols
src/visual-editor/components/right-attribute-panel/components/event-action/index.tsx11 symbols
src/visual-editor/components/right-attribute-panel/components/animate/Animate.tsx7 symbols
src/visual-editor/plugins/command.plugin.ts6 symbols
types/global.d.ts5 symbols
src/visual-editor/components/right-attribute-panel/components/attr-editor/components/cross-sortable-options-editor/cross-sortable-options-editor.tsx5 symbols
src/visual-editor/utils/dropdown-service.tsx4 symbols
src/visual-editor/components/common/format-input-number/index.tsx4 symbols
src/hooks/useAnimate.ts4 symbols
types/index.d.ts3 symbols

Dependencies from manifests, versioned

@commitlint/cli17.0.3 · 1×
@commitlint/config-conventional17.0.3 · 1×
@element-plus/icons-vue2.0.6 · 1×
@types/lodash-es4.17.6 · 1×
@types/node18.0.3 · 1×
@typescript-eslint/eslint-plugin5.30.5 · 1×
@typescript-eslint/parser5.30.5 · 1×
@vant/touch-emulator1.3.2 · 1×
@vitejs/plugin-legacy1.8.2 · 1×
@vitejs/plugin-vue2.3.3 · 1×
@vitejs/plugin-vue-jsx1.3.10 · 1×
@vueuse/core8.9.1 · 1×

For agents

$ claude mcp add vite-vue3-lowcode \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact