# excalidraw/excalidraw

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/excalidraw-excalidraw).**

125,451 stars · 14,035 forks · TypeScript · MIT

## Links

- GitHub: https://github.com/excalidraw/excalidraw
- Homepage: https://excalidraw.com
- awesome-repositories: https://awesome-repositories.com/repository/excalidraw-excalidraw.md

## Topics

`canvas` `collaboration` `diagrams` `drawing` `hacktoberfest` `productivity` `whiteboard`

## Description

This project is a virtual whiteboard component and vector graphics editor designed for creating diagrams with a hand-drawn aesthetic. It provides a canvas-based drawing engine that can be embedded directly into web applications, allowing users to manipulate shapes, upload images, and export visual data into standard formats like PNG, SVG, or JSON.

The platform distinguishes itself through a real-time synchronization layer that supports multi-user collaboration across distributed environments. This engine utilizes end-to-end encryption to secure shared sessions and employs a local-first data persistence model, which ensures that application state is maintained in browser storage to prevent data loss during network interruptions.

Beyond its core drawing capabilities, the software supports self-hosted deployment, allowing teams to manage private instances within their own containerized infrastructure. The system handles complex user interactions through an event-driven architecture that translates pointer and keyboard gestures into persistent geometric objects, while also providing options for custom typography to maintain visual consistency across workspaces.

## Tags

### Business & Productivity Software

- [Collaborative Editors](https://awesome-repositories.com/f/business-productivity-software/team-collaboration-events/collaboration-communication-tools/collaboration-software/collaborative-editors.md) — Facilitates real-time visual brainstorming by synchronizing multi-user sessions with end-to-end encryption for secure team collaboration.

### Graphics & Multimedia

- [Canvas Rendering Engines](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/rendering/engines/canvas-vector-graphics/canvas-rendering-engines.md) — Maps vector data onto HTML5 canvas elements using a custom engine that simulates hand-drawn visuals in pixel-based output.
- [Vector Graphics Editors](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/rendering/vector-graphics-editors.md) — Creates a specialized workspace for manipulating vector-based shapes while maintaining a distinct, hand-drawn aesthetic.
- [Embeddable Whiteboards](https://awesome-repositories.com/f/graphics-multimedia/whiteboarding/embeddable-whiteboards.md) — Integrates an interactive digital canvas into web applications to enable seamless, real-time drawing and diagramming capabilities. ([source](https://docs.excalidraw.com/))
- [Infinite Canvas Editors](https://awesome-repositories.com/f/graphics-multimedia/whiteboarding/infinite-canvas-editors.md) — Supports expansive visual projects through infinite panning, complex shape manipulation, and versatile export options for finished diagrams. ([source](https://cdn.jsdelivr.net/gh/excalidraw/excalidraw@master/README.md))
- [Collaborative Drawing Engines](https://awesome-repositories.com/f/graphics-multimedia/whiteboarding/infinite-canvas-editors/collaborative-drawing-engines.md) — Coordinates multi-user canvas interactions through a synchronization layer that prioritizes local-first data persistence for smooth collaborative performance.

### User Interface & Experience

- [Collaborative Whiteboards](https://awesome-repositories.com/f/user-interface-experience/ui-components/text-editors/collaborative-whiteboards.md) — Embeds interactive sketching tools directly into web interfaces to allow teams to collaborate on visual diagrams in real time. ([source](https://docs.excalidraw.com))
- [Event-Driven Interaction Handlers](https://awesome-repositories.com/f/user-interface-experience/form-and-input-management/interaction-and-event-handling/general-interaction-frameworks/interaction-models/event-driven-interaction-handlers.md) — Translates raw pointer and keyboard inputs into persistent geometric objects through a centralized event-driven architecture.

### Security & Cryptography

- [End-to-End Encryption](https://awesome-repositories.com/f/security-cryptography/privacy-data-protection/data-encryption/end-to-end-encryption.md) — Protects sensitive whiteboard content by encrypting all data on the client side before transmission to ensure private collaborative sessions.

### Software Engineering & Architecture

- [Modular and Plugin Architectures](https://awesome-repositories.com/f/software-engineering-architecture/software-architecture/architectural-patterns/plugin-module-systems/modular-plugin-architectures.md) — Exposes core drawing functionality as a modular library, enabling developers to integrate interactive canvas components into custom software architectures.
- [Application Integration](https://awesome-repositories.com/f/software-engineering-architecture/integration-extensibility/application-integration.md) — Connects drawing capabilities to existing web applications by embedding a persistent, canvas-based engine for hand-drawn style diagramming.

### Data & Databases

- [Local-First Persistence](https://awesome-repositories.com/f/data-databases/data-engineering-infrastructure/data-persistence-storage/data-storage/client-side-persistence/local-first-persistence.md) — Leverages browser-based storage to maintain application state locally, ensuring data availability and persistence even during offline operation.
- [Real-Time Synchronization Engines](https://awesome-repositories.com/f/data-databases/database-management-systems/real-time-synchronization-engines.md) — Maintains consistent shared states by synchronizing real-time edits across distributed client environments. ([source](https://docs.excalidraw.com/docs/introduction/development))
- [Local-First Storage](https://awesome-repositories.com/f/data-databases/local-first-storage.md) — Ensures continuous data availability by prioritizing local storage for offline work and automatic state recovery.

### DevOps & Infrastructure

- [Collaborative Workspaces](https://awesome-repositories.com/f/devops-infrastructure/self-hosted-applications/collaborative-workspaces.md) — Deploys containerized environments that provide private, shared workspaces for teams to collaborate on visual documentation.
- [Self-Hosted Deployment Infrastructure](https://awesome-repositories.com/f/devops-infrastructure/deployment-management/self-hosted-infrastructure-management/self-hosted-deployment-infrastructure.md) — Manages self-hosted containerized instances under custom domains to provide secure, private access to collaborative software. ([source](https://docs.excalidraw.com/docs/introduction/development))
- [Self-Hosted Applications](https://awesome-repositories.com/f/devops-infrastructure/self-hosted-applications.md) — Enables full control over data and access by hosting collaborative whiteboard instances within private, containerized infrastructure.

### Part of an Awesome List

- [Development Environments](https://awesome-repositories.com/f/awesome-lists/devtools/development-environments.md) — Virtual whiteboard for sketching diagrams.
- [Diagramming Tools](https://awesome-repositories.com/f/awesome-lists/devtools/diagramming-tools.md) — Virtual whiteboard library for hand-drawn style diagrams.
- [Documentation and Knowledge](https://awesome-repositories.com/f/awesome-lists/productivity/documentation-and-knowledge.md) — Virtual whiteboard for sketching hand-drawn diagrams.
