0.57.0 • Published 8 days ago

@plait/core v0.57.0

Weekly downloads
-
License
-
Repository
-
Last release
8 days ago

@plait/core

中文

The Plait framework core library includes core data model, data transformation functions, plugin mechanisms, etc. In addition, it also includes plugin element rendering base class and board components containing basic whiteboard interactions.

Currently @plait/core takes on too many responsibilities, including the core data model, plugin mechanism, the bridging layer of the front-end framework layer, and some basic drawing-related plugins, because currently it only needs some basic drawing board requirements (such as frame selection, dragging and moving element positions) will all be in the core, and more detailed package divisions may be considered in the future.

Basic whiteboard functions

  1. Provide a drawing board component (based on Angular)
  2. Zoom in, zoom out, and drag the canvas
  3. Integrated canvas scrolling solution
  4. Undo, redo
  5. Click/drag to select elements
  6. Drag to adjust element position
  7. Theme plan

Design ideas

Plait is a framework designed for all-in-one whiteboard tool, its core is plugin mechanism and data model. The plugin mechanism is the external manifestation, it allows developers to extend the functionality of the whiteboard in the form of plugins. The framework provides the necessary extension bridges and communication mechanisms to serve plugin development. The data model is the kernel, providing definitions for data and functions for data operation, and is the internal representation of the plugin.

Plugin mechanism

The plugin mechanism builds an extension bridge based on override methods. It currently supports custom interaction and custom rendering. In terms of custom interaction, plait/core currently directly defines basic DOM events as override methods in the most primitive way, such as: PointerDown, pointerUp, pointerMove, keyDown, keyUp, etc. do not have too many business-level encapsulations. Custom rendering currently supports extending the rendering of plugins in the form of Angular components.

Data Model

Mainly provides the following capabilities:

  1. Provide basic data model
  2. Provide atomic-based data change methods (Transforms)
  3. Based on immutable data model (based on Immer)
  4. Provide a Change mechanism to cooperate with the framework to complete data-driven rendering.
  5. Integrated with the plugin mechanism, the data modification process can be intercepted and processed

Standard data flow

data flow

Architecture diagram

architecture diagram

Dependence

  • roughjs
  • is-hotkey
0.56.2

8 days ago

0.57.0

8 days ago

0.56.1

19 days ago

0.56.0

20 days ago

0.55.1

29 days ago

0.55.0

1 month ago

0.54.0

1 month ago

0.53.0

2 months ago

0.52.0

2 months ago

0.51.4

2 months ago

0.52.0-next.0

2 months ago

0.51.3

2 months ago

0.51.2

3 months ago

0.51.0

3 months ago

0.51.1

3 months ago

0.50.1

4 months ago

0.50.0

4 months ago

0.49.0

5 months ago

0.48.0

5 months ago

0.45.0

5 months ago

0.46.0

5 months ago

0.47.0

5 months ago

0.44.0

5 months ago

0.43.0

5 months ago

0.41.0

5 months ago

0.42.0

5 months ago

0.40.0

5 months ago

0.39.0

5 months ago

0.37.0

5 months ago

0.38.0

5 months ago

0.36.0

5 months ago

0.34.0

5 months ago

0.35.0

5 months ago

0.33.0

5 months ago

0.20.0

10 months ago

0.13.0

11 months ago

0.17.0

10 months ago

0.32.0

6 months ago

0.29.0

6 months ago

0.21.0

10 months ago

0.14.0

11 months ago

0.22.0

10 months ago

0.19.0

10 months ago

0.15.0

11 months ago

0.15.1

10 months ago

0.30.0

6 months ago

0.24.0-next.10

7 months ago

0.24.0-next.12

7 months ago

0.24.0-next.11

7 months ago

0.23.0

9 months ago

0.24.0-next.13

7 months ago

0.24.0-next.3

8 months ago

0.24.0-next.2

9 months ago

0.24.0-next.1

9 months ago

0.24.0-next.0

9 months ago

0.24.0-next.7

8 months ago

0.24.0-next.6

8 months ago

0.24.0-next.5

8 months ago

0.24.0-next.4

8 months ago

0.24.0-next.9

8 months ago

0.12.1

11 months ago

0.24.0-next.8

8 months ago

0.16.0

10 months ago

0.16.1

10 months ago

0.31.0

6 months ago

0.28.0

7 months ago

0.11.0

11 months ago

0.12.0

11 months ago

0.10.0

11 months ago

0.2.0-next.3

1 year ago

0.2.0-next.2

1 year ago

0.2.0-next.0

1 year ago

0.3.0

12 months ago

0.2.0-next.9

1 year ago

0.2.0-next.8

1 year ago

0.9.0

11 months ago

0.5.0

12 months ago

0.2.0-next.11

1 year ago

0.2.1

12 months ago

0.2.0

12 months ago

0.8.0

11 months ago

0.2.3

12 months ago

0.4.0

12 months ago

0.2.2

12 months ago

0.6.0

11 months ago

0.2.4

12 months ago

0.1.0

1 year ago

0.1.2

1 year ago

0.1.1

1 year ago

0.1.8

1 year ago

0.1.7

1 year ago

0.1.9

1 year ago

0.1.4

1 year ago

0.1.3

1 year ago

0.1.6

1 year ago

0.1.5

1 year ago

0.0.57

1 year ago

0.0.58

1 year ago

0.0.42

2 years ago

0.0.43

2 years ago

0.0.44

2 years ago

0.0.45

2 years ago

0.0.46

2 years ago

0.0.47

2 years ago

0.0.52

2 years ago

0.0.53

2 years ago

0.0.55

2 years ago

0.0.56

2 years ago

0.0.50

2 years ago

0.0.48

2 years ago

0.0.49

2 years ago

0.0.40

2 years ago

0.0.41

2 years ago

0.0.21

2 years ago

0.0.22

2 years ago

0.0.24

2 years ago

0.0.25

2 years ago

0.0.37

2 years ago

0.0.38

2 years ago

0.0.16

2 years ago

0.0.39

2 years ago

0.0.17

2 years ago

0.0.18

2 years ago

0.0.19

2 years ago

0.0.33

2 years ago

0.0.11

2 years ago

0.0.12

2 years ago

0.0.35

2 years ago

0.0.13

2 years ago

0.0.14

2 years ago

0.0.8

2 years ago

0.0.28

2 years ago

0.0.29

2 years ago

0.0.7

2 years ago

0.0.6

2 years ago

0.0.5

2 years ago

0.0.4

2 years ago

0.0.2

2 years ago