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
Abhishek Mehandiratta 5a11c70714
fix: image rendering issue when passed in `initialData` (#8471)
5 months ago
..
actions chore: Unify math types, utils and functions (#8389) 5 months ago
components fix: image rendering issue when passed in `initialData` (#8471) 5 months ago
context build: enable consistent type imports eslint rule (#7992) 9 months ago
css fix: PropertiesPopover maxWidth changing fixed units to relative units (#8456) 5 months ago
data chore: Unify math types, utils and functions (#8389) 5 months ago
element chore: Unify math types, utils and functions (#8389) 5 months ago
fonts feat: subset font glyphs for SVG export (#8384) 5 months ago
hooks feat: subset font glyphs for SVG export (#8384) 5 months ago
locales fix: fixed copy to clipboard button (#8426) 5 months ago
renderer chore: Unify math types, utils and functions (#8389) 5 months ago
scene chore: Unify math types, utils and functions (#8389) 5 months ago
tests fix: add partial mocking (#8473) 5 months ago
.gitignore docs: add next js with app router example (#7552) 1 year ago
.size-limit.json
CHANGELOG.md feat: Stats popup style tweaks (#8361) 6 months ago
README.md
align.ts build: enable consistent type imports eslint rule (#7992) 9 months ago
analytics.ts feat: subset font glyphs for SVG export (#8384) 5 months ago
animated-trail.ts build: enable consistent type imports eslint rule (#7992) 9 months ago
animation-frame-handler.ts feat: add eraser tool trail (#7511) 1 year ago
appState.ts perf: improve new element drawing (#8340) 5 months ago
binaryheap.ts feat: Orthogonal (elbow) arrows for diagramming (#8299) 6 months ago
change.ts chore: Refactor and remove scene from elbow arrow generation (#8342) 6 months ago
charts.test.ts build: enable consistent type imports eslint rule (#7992) 9 months ago
charts.ts chore: Unify math types, utils and functions (#8389) 5 months ago
clients.ts build: enable consistent type imports eslint rule (#7992) 9 months ago
clipboard.test.ts
clipboard.ts build: enable consistent type imports eslint rule (#7992) 9 months ago
colors.ts build: enable consistent type imports eslint rule (#7992) 9 months ago
constants.ts feat: enable panning/zoom while in wysiwyg (#8437) 5 months ago
css.d.ts
cursor.ts build: enable consistent type imports eslint rule (#7992) 9 months ago
deburr.ts feat: command palette (#7804) 10 months ago
distribute.ts fix: make getBoundTextElement and related helpers pure (#7601) 1 year ago
emitter.ts build: enable consistent type imports eslint rule (#7992) 9 months ago
env.cjs build: Welcome ESM and Bye Bye UMD (#7441) 1 year ago
errors.ts feat: fractional indexing (#7359) 10 months ago
fractionalIndex.ts fix: throttle fractional indices validation (#8306) 6 months ago
frame.test.tsx chore: bump `@testing-library/react` `12.1.5` -> `16.0.0` (#8322) 6 months ago
frame.ts chore: Unify math types, utils and functions (#8389) 5 months ago
gesture.ts build: enable consistent type imports eslint rule (#7992) 9 months ago
global.d.ts feat: multiple fonts fallbacks (#8286) 6 months ago
groups.ts feat: editable element stats (#6382) 8 months ago
history.ts chore: Refactor and remove scene from elbow arrow generation (#8342) 6 months ago
i18n.ts build: enable consistent type imports eslint rule (#7992) 9 months ago
index-node.ts
index.tsx feat: rewrite d2c to not require token (#8269) 5 months ago
jotai.ts build: enable consistent type imports eslint rule (#7992) 9 months ago
keys.ts feat: command palette (#7804) 10 months ago
laser-trails.ts build: enable consistent type imports eslint rule (#7992) 9 months ago
mermaid.test.ts feat: improve mermaid detection on paste (#8287) 6 months ago
mermaid.ts feat: improve mermaid detection on paste (#8287) 6 months ago
package.json feat: subset font glyphs for SVG export (#8384) 5 months ago
points.ts chore: Unify math types, utils and functions (#8389) 5 months ago
polyfill.ts
pwacompat.d.ts
queue.test.ts feat: store library to IndexedDB & support storage adapters (#7655) 11 months ago
queue.ts build: enable consistent type imports eslint rule (#7992) 9 months ago
random.ts
react-app-env.d.ts
reactUtils.ts fix: decouple react and react-dom imports from utils and make it treeshakeable (#7527) 1 year ago
shapes.tsx chore: Unify math types, utils and functions (#8389) 5 months ago
snapping.ts chore: Unify math types, utils and functions (#8389) 5 months ago
store.ts docs: fix `updateScene` `storeAction` default tsdoc & document types (#8048) 8 months ago
tsconfig.json docs: add next js with app router example (#7552) 1 year ago
types.ts chore: Unify math types, utils and functions (#8389) 5 months ago
utility-types.ts feat: store library to IndexedDB & support storage adapters (#7655) 11 months ago
utils.ts chore: Unify math types, utils and functions (#8389) 5 months ago
visualdebug.ts chore: Unify math types, utils and functions (#8389) 5 months ago
vite-env.d.ts refactor: remove unused env variable (#8457) 5 months ago
zindex.ts fix: z-index change by one causes app to freeze (#8314) 6 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