Skip to content

A highly extensible JavaScript library, abbreviated as Sifo. 一个高扩展性、可二开的插件式前端开发框架

License

Notifications You must be signed in to change notification settings

FrominXu/schema-plugin-flow

 
 

Repository files navigation

schema-plugin-flow

Introduction

schema-plugin-flow, abbreviated as Sifo ([sɪfɔ]),is a highly extensible JavaScript library. This library allows developers to extend business logic and page layout without touching source code, when the source code is written in Sifo.

  • sifo-model is the core of Sifo, which using JSON (as Schema) to describe page's structures and using plugins as logic controller. There are three kinds of plugin: modelPlugin、pagePlugin and componentPluign.
  • sifo-singleton is a global extensions holder. All kinds of extend-plugins and extend-components are registered to it.
  • sifo-react is a React Component encapsulates sifo-model and sifo-singleton.
  • sifo-vue is a Vue Component encapsulates sifo-model and sifo-singleton.

Installation

$ npm i @schema-plugin-flow/sifo-model --save
$ npm i @schema-plugin-flow/sifo-react --save
$ npm i @schema-plugin-flow/sifo-mplg-react-optimize --save
$ npm i @schema-plugin-flow/sifo-vue --save

Try

you can try to run the examples.

  • clone code and start
$ git clone https://github.com/alibaba/schema-plugin-flow.git
$ cd schema-plugin-flow
$ npm run i
$ npm run start
  • then visit http://localhost:8000.

Try for Vue

you can try to run the examples.

  • clone code and start
$ git clone https://github.com/alibaba/schema-plugin-flow.git
$ cd schema-plugin-flow
$ npm run i
$ npm run i-vue
$ npm run start-vue
  • then visit http://localhost:8080.

SifoApp (sifo-react/sifo-vue) Demo

In this demo, there are seven extend-plugins in seven independent js. The checkbox set which plugin should be registered. Each plugin control different logic and all registered plugins make up a integrated page.

demo

About

A highly extensible JavaScript library, abbreviated as Sifo. 一个高扩展性、可二开的插件式前端开发框架

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 56.0%
  • TypeScript 37.4%
  • Vue 5.8%
  • Other 0.8%