Slide 1

Slide 1 text

Rich-text editors in ReactJS An intro to DraftJS

Slide 2

Slide 2 text

HI!

Slide 3

Slide 3 text

STRUCTURED CONTENT EDITING

Slide 4

Slide 4 text

STRUCTURED CONTENT EDITING Three paradigms...

Slide 5

Slide 5 text

STRUCTURED CONTENT EDITING WHAT YOU SEE IS WHAT YOU GET

Slide 6

Slide 6 text

STRUCTURED CONTENT EDITING WHAT YOU SEE IS WHAT YOU MEAN

Slide 7

Slide 7 text

No content

Slide 8

Slide 8 text

No content

Slide 9

Slide 9 text

STRUCTURED CONTENT EDITING WHAT YOU SEE IS WHAT YOU MEAN

Slide 10

Slide 10 text

STRUCTURED CONTENT EDITING VIEW

Slide 11

Slide 11 text

THE HASHNODE EDITOR

Slide 12

Slide 12 text

THE HASHNODE EDITOR

Slide 13

Slide 13 text

THE HASHNODE EDITOR

Slide 14

Slide 14 text

THE HASHNODE EDITOR

Slide 15

Slide 15 text

WHY WYSIWYG

Slide 16

Slide 16 text

CONTENT-EDITABLE

Slide 17

Slide 17 text

CONTENT-EDITABLE

Slide 18

Slide 18 text

ENTER DraftJS Normalises the content-editable markup across browsers...

Slide 19

Slide 19 text

ENTER DraftJS The declarative goodness of React...

Slide 20

Slide 20 text

ENTER DraftJS An immutable data model which represents an editor state...

Slide 21

Slide 21 text

ENTER DraftJS An immutable data model which represents an editor state... along with a set of APIs

Slide 22

Slide 22 text

ENTER DraftJS

Slide 23

Slide 23 text

THE DraftJS DATA MODEL EDITOR STATE

Slide 24

Slide 24 text

THE DraftJS DATA MODEL EDITOR STATE CONTENT STATE SELECTION STATE

Slide 25

Slide 25 text

THE DraftJS DATA MODEL EDITOR STATE CONTENT STATE SELECTION STATE CONTENT BLOCK CONTENT BLOCK

Slide 26

Slide 26 text

THE DraftJS DATA MODEL EDITOR STATE CONTENT STATE SELECTION STATE CONTENT BLOCK CHARACTER LIST CONTENT BLOCK CHARACTER LIST

Slide 27

Slide 27 text

THE DraftJS DATA MODEL EDITOR STATE CONTENT STATE ENTITIES DECORATORS SELECTION STATE CONTENT BLOCK CHARACTER LIST CONTENT BLOCK CHARACTER LIST

Slide 28

Slide 28 text

No content

Slide 29

Slide 29 text

No content

Slide 30

Slide 30 text

Questions? You should ask them on: hashnode.com/n/draftjs