You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
success/packages/excalidraw
Marcel Mraz 12be5d716b
Chunking incoming WS messages
1 month ago
..
actions Offline support with increments peristed and restored to / from indexedb 1 month ago
cloudflare Chunking incoming WS messages 1 month ago
components Applying & emitting increments on undo / redo 1 month ago
context feat: update jotai (#9015) 2 months ago
css feat: canvas search (#8438) 6 months ago
data feat: allow installing libs from excal github (#9041) 1 month ago
element fix: excalidraw issue #9045 flowcharts: align attributes of new node (#9047) 1 month ago
fonts chore: simplify line-break regexes, separate text wrapping (#8715) 4 months ago
hooks Include runtime types, otherwise ts goes crazy 1 month ago
locales feat: add action to wrap selected items in a frame (#9005) 2 months ago
renderer Include runtime types, otherwise ts goes crazy 1 month ago
scene feat: box select frame & children to allow resizing at the same time (#9031) 1 month ago
subset Include runtime types, otherwise ts goes crazy 1 month ago
sync Chunking incoming WS messages 1 month ago
tests Offline support with increments peristed and restored to / from indexedb 1 month ago
.gitignore WIP sync client 1 month ago
.size-limit.json build: decouple package deps and introduce yarn workspaces (#7415) 1 year ago
CHANGELOG.md feat: add first-class support for CJK (#8530) 5 months ago
README.md build: decouple package deps and introduce yarn workspaces (#7415) 1 year ago
align.ts fix: align arrows bound to elements excalidraw#8833 (#8998) 1 month ago
analytics.ts feat: subset font glyphs for SVG export (#8384) 6 months ago
animated-trail.ts build: enable consistent type imports eslint rule (#7992) 10 months ago
animation-frame-handler.ts feat: add eraser tool trail (#7511) 1 year ago
appState.ts feat: in canvas links between shapes (#8812) 3 months ago
binaryheap.ts feat: Orthogonal (elbow) arrows for diagramming (#8299) 7 months ago
change.ts Offline support with increments peristed and restored to / from indexedb 1 month ago
charts.test.ts build: enable consistent type imports eslint rule (#7992) 10 months ago
charts.ts refactor: `point()` -> `pointFrom()` to fix compiler issue (#8578) 5 months ago
clients.ts build: enable consistent type imports eslint rule (#7992) 10 months ago
clipboard.test.ts build: decouple package deps and introduce yarn workspaces (#7415) 1 year ago
clipboard.ts fix: right-click paste for images in clipboard (Issue #8826) (#8845) 3 months ago
colors.ts build: enable consistent type imports eslint rule (#7992) 10 months ago
constants.ts fix: right-click paste for images in clipboard (Issue #8826) (#8845) 3 months ago
css.d.ts build: decouple package deps and introduce yarn workspaces (#7415) 1 year ago
cursor.ts build: enable consistent type imports eslint rule (#7992) 10 months ago
deburr.ts feat: command palette (#7804) 11 months ago
distribute.ts fix: make getBoundTextElement and related helpers pure (#7601) 1 year ago
editor-jotai.ts feat: update jotai (#9015) 2 months ago
emitter.ts build: enable consistent type imports eslint rule (#7992) 10 months ago
env.cjs build: Welcome ESM and Bye Bye UMD (#7441) 1 year ago
errors.ts feat: export scene to e+ on workspace creation/redemption (#8514) 4 months ago
fractionalIndex.ts feat: Elbow arrow segment fixing & positioning (#8952) 2 months ago
frame.test.tsx chore: bump `@testing-library/react` `12.1.5` -> `16.0.0` (#8322) 7 months ago
frame.ts feat: box select frame & children to allow resizing at the same time (#9031) 1 month ago
gesture.ts build: enable consistent type imports eslint rule (#7992) 10 months ago
global.d.ts feat: multiple fonts fallbacks (#8286) 7 months ago
groups.ts feat: do not delete frame children on frame delete (#9011) 2 months ago
history.ts Offline support with increments peristed and restored to / from indexedb 1 month ago
i18n.ts feat: update jotai (#9015) 2 months ago
index-node.ts build: decouple package deps and introduce yarn workspaces (#7415) 1 year ago
index.tsx Expose store, a bit 1 month ago
keys.test.ts fix: undo/redo action for international keyboard layouts (#8649) 4 months ago
keys.ts fix: undo/redo action for international keyboard layouts (#8649) 4 months ago
laser-trails.ts build: enable consistent type imports eslint rule (#7992) 10 months ago
mermaid.test.ts feat: improve mermaid detection on paste (#8287) 7 months ago
mermaid.ts feat: improve mermaid detection on paste (#8287) 7 months ago
package.json Various sync & time travel fixes 1 month ago
points.ts chore: Unify math types, utils and functions (#8389) 6 months ago
polyfill.ts Include runtime types, otherwise ts goes crazy 1 month ago
pwacompat.d.ts build: decouple package deps and introduce yarn workspaces (#7415) 1 year ago
queue.test.ts feat: store library to IndexedDB & support storage adapters (#7655) 1 year ago
queue.ts build: enable consistent type imports eslint rule (#7992) 10 months ago
random.ts build: decouple package deps and introduce yarn workspaces (#7415) 1 year ago
react-app-env.d.ts build: decouple package deps and introduce yarn workspaces (#7415) 1 year ago
reactUtils.ts fix: decouple react and react-dom imports from utils and make it treeshakeable (#7527) 1 year ago
shapes.tsx refactor: `point()` -> `pointFrom()` to fix compiler issue (#8578) 5 months ago
snapping.ts refactor: `point()` -> `pointFrom()` to fix compiler issue (#8578) 5 months ago
store.ts Offline support with increments peristed and restored to / from indexedb 1 month ago
tsconfig.json Include runtime types, otherwise ts goes crazy 1 month ago
types.ts Applying & emitting increments on undo / redo 1 month ago
utility-types.ts Offline support with increments peristed and restored to / from indexedb 1 month ago
utils.ts feat: make HTML attribute sanitization stricter (#8977) 2 months ago
visualdebug.ts feat: Elbow arrow segment fixing & positioning (#8952) 2 months ago
vite-env.d.ts refactor: remove unused env variable (#8457) 6 months ago
worker-configuration.d.ts Include runtime types, otherwise ts goes crazy 1 month ago
worker-runtime.d.ts Include runtime types, otherwise ts goes crazy 1 month ago
workers.ts fix: Comic Shanns issues, new fonts structure (#8641) 4 months ago
wrangler.toml Temporarily move sync into package 1 month ago
zindex.ts fix: z-index change by one causes app to freeze (#8314) 7 months ago

README.md

Excalidraw

Excalidraw is exported as a component to directly embed in your projects.

Installation

You can use npm

npm install react react-dom @excalidraw/excalidraw

or via yarn

yarn add react react-dom @excalidraw/excalidraw

After installation you will see a folder excalidraw-assets and excalidraw-assets-dev in dist directory which contains the assets needed for this app in prod and dev mode respectively.

Move the folder excalidraw-assets and excalidraw-assets-dev to the path where your assets are served.

By default it will try to load the files from https://unpkg.com/@excalidraw/excalidraw/dist/

If you want to load assets from a different path you can set a variable window.EXCALIDRAW_ASSET_PATH depending on environment (for example if you have different URL's for dev and prod) to the url from where you want to load the assets.

Note

If you don't want to wait for the next stable release and try out the unreleased changes you can use @excalidraw/excalidraw@next.

Dimensions of Excalidraw

Excalidraw takes 100% of width and height of the containing block so make sure the container in which you render Excalidraw has non zero dimensions.

Demo

Try here.

Integration

Head over to the docs

API

Head over to the docs

Contributing

Head over to the docs