Hoja de Referencia de Excalidraw
Descripción General
Excalidraw es una herramienta de pizarra virtual colaborativa que te permite dibujar diagramas fácilmente con un aspecto hecho a mano. Es perfecto para crear wireframes, hacer lluvia de ideas, diseñar sistemas y crear diagramas técnicos con una apariencia natural y de boceto que hace que las ideas complejas sean más accesibles.
⚠️ Nota: Gratis para usar en excalidraw.com. Opciones de autohospedaje e integraciones disponibles.
Primeros Pasos
Would you like me to continue with the remaining sections? If so, please provide the specific text for each numbered section, and I’ll translate them following the same guidelines.```bash
Web application:
Visit: https://excalidraw.com
No account required for basic use
Account optional for saving and collaboration
VS Code extension:
Install “Excalidraw” extension
Create .excalidraw files
Edit directly in VS Code
Self-hosted:
Clone from GitHub: https://github.com/excalidraw/excalidraw
Docker deployment available
Custom domain setup
### Interface Overview
```bash
# Main interface elements:
# - Canvas: Drawing area
# - Toolbar: Drawing tools and shapes
# - Properties panel: Styling options
# - Layers panel: Element organization
# - Library: Saved shapes and templates
# - Share menu: Collaboration options
First Drawing
# Basic workflow:
# 1. Select a tool from toolbar
# 2. Click and drag on canvas
# 3. Adjust properties (color, stroke, fill)
# 4. Add text labels
# 5. Arrange and group elements
# 6. Save or share your drawing
Drawing Tools
Selection Tool
# Selection modes:
# - Single click: Select one element
# - Drag: Select multiple elements
# - Ctrl/Cmd + A: Select all
# - Ctrl/Cmd + click: Add/remove from selection
# Selection actions:
# - Drag to move
# - Drag corners to resize
# - Drag rotation handle to rotate
# - Double-click text to edit
Shape Tools
# Rectangle tool:
# - Click and drag to create
# - Hold Shift for perfect square
# - Rounded corners available in properties
# Ellipse tool:
# - Click and drag to create
# - Hold Shift for perfect circle
# - Adjust stroke and fill properties
# Diamond tool:
# - Creates diamond/rhombus shapes
# - Useful for flowchart decision points
# - Adjustable proportions
Drawing Tools
# Pen tool:
# - Freehand drawing
# - Pressure-sensitive (on supported devices)
# - Adjustable stroke width
# - Smooth or rough style
# Line tool:
# - Straight lines
# - Hold Shift for horizontal/vertical
# - Adjustable endpoints (arrow, dot, bar)
# - Multiple line styles available
# Arrow tool:
# - Directional arrows
# - Curved or straight
# - Adjustable arrowheads
# - Perfect for flowcharts and diagrams
Text Tool
# Text creation:
# - Click to place text
# - Type to add content
# - Enter for new line
# - Escape to finish editing
# Text formatting:
# - Font family selection
# - Font size adjustment
# - Text alignment (left, center, right)
# - Text color customization
Keyboard Shortcuts
Tool Selection
# Drawing tools:
V # Selection tool
R # Rectangle
O # Ellipse
D # Diamond
P # Pen/Draw
L # Line
A # Arrow
T # Text
# Quick actions:
Space + drag # Pan canvas
Ctrl/Cmd + scroll # Zoom in/out
Ctrl/Cmd + 0 # Zoom to fit
Ctrl/Cmd + 1 # Zoom to 100%
Editing Shortcuts
# Selection and manipulation:
Ctrl/Cmd + A # Select all
Ctrl/Cmd + D # Duplicate
Delete/Backspace # Delete selected
Ctrl/Cmd + Z # Undo
Ctrl/Cmd + Y # Redo
Ctrl/Cmd + Shift + Z # Redo (alternative)
# Grouping and layers:
Ctrl/Cmd + G # Group selection
Ctrl/Cmd + Shift + G # Ungroup
Ctrl/Cmd + ] # Send to back
Ctrl/Cmd + [ # Bring to front
Ctrl/Cmd + Shift + ] # Send backward
Ctrl/Cmd + Shift + [ # Bring forward
Canvas Navigation
# View controls:
Ctrl/Cmd + Plus # Zoom in
Ctrl/Cmd + Minus # Zoom out
Ctrl/Cmd + 0 # Fit to screen
Ctrl/Cmd + 1 # Actual size
Space + drag # Pan canvas
Mouse wheel # Zoom at cursor
# Grid and guides:
Ctrl/Cmd + ' # Toggle grid
Ctrl/Cmd + Shift + ' # Toggle snap to grid
Styling and Properties
Stroke Properties
# Stroke options:
# - Color: Full color picker
# - Width: 1-5 pixel options
# - Style: Solid, dashed, dotted
# - Roughness: 0 (smooth) to 2 (very rough)
# - Opacity: 0% to 100%
# Stroke styles:
# Architect: Clean, precise lines
# Artist: Hand-drawn, sketchy feel
# Cartoonist: Bold, expressive strokes
Fill Properties
# Fill options:
# - Transparent: No fill
# - Solid: Solid color fill
# - Hachure: Cross-hatched pattern
# - Cross-hatch: Denser cross-hatching
# - Dots: Dotted pattern
# Fill customization:
# - Color selection
# - Opacity adjustment
# - Pattern density
# - Background transparency
Text Styling
# Font options:
# - Virgil: Hand-drawn style (default)
# - Helvetica: Clean, modern
# - Cascadia: Monospace, code-friendly
# Text properties:
# - Size: 16px to 96px
# - Color: Full spectrum
# - Alignment: Left, center, right
# - Vertical alignment: Top, middle, bottom
Advanced Features
Libraries and Templates
# Using libraries:
# 1. Click library icon in toolbar
# 2. Browse available libraries
# 3. Click to add items to canvas
# 4. Customize as needed
# Creating custom libraries:
# 1. Select elements to save
# 2. Click "Add to library"
# 3. Name your library item
# 4. Reuse across drawings
# Popular libraries:
# - System design components
# - AWS architecture icons
# - Flowchart symbols
# - UI/UX wireframe elements
Collaboration Features
# Real-time collaboration:
# 1. Click "Share" button
# 2. Copy shareable link
# 3. Share with team members
# 4. Collaborate in real-time
# Collaboration features:
# - Live cursors showing other users
# - Real-time updates
# - Comment system
# - Version history
# - Conflict resolution
Export Options
# Export formats:
# - PNG: Raster image
# - SVG: Vector graphics
# - Excalidraw: Native format
# - JSON: Data format
# Export settings:
# - Background: Transparent or colored
# - Scale: 1x, 2x, 3x for high DPI
# - Selection only: Export selected elements
# - Include watermark: Optional branding
Use Cases and Patterns
System Architecture Diagrams
# Architecture components:
# - Rectangles: Services, databases
# - Ellipses: External systems
# - Arrows: Data flow, connections
# - Text: Labels and annotations
# Best practices:
# - Use consistent shapes for similar components
# - Group related elements
# - Use colors to indicate different layers
# - Add clear labels and descriptions
# - Show data flow direction with arrows
Flowcharts and Process Diagrams
# Flowchart symbols:
# - Rectangle: Process step
# - Diamond: Decision point
# - Ellipse: Start/end point
# - Parallelogram: Input/output
# - Circle: Connector
# Flowchart tips:
# - Start with high-level flow
# - Add detail progressively
# - Use consistent symbol meanings
# - Keep text concise
# - Test the logic flow
Wireframes and Mockups
# Wireframe elements:
# - Rectangles: Content areas, buttons
# - Lines: Dividers, borders
# - Text: Labels, content placeholders
# - Arrows: User flow, interactions
# Wireframe best practices:
# - Focus on layout, not visual design
# - Use grayscale colors
# - Include navigation elements
# - Show content hierarchy
# - Indicate interactive elements
```### Mapas Mentales y Lluvia de Ideas
```bash
# Mind map structure:
# - Central topic in center
# - Main branches radiating out
# - Sub-branches for details
# - Colors for categorization
# - Icons for visual interest
# Brainstorming techniques:
# - Start with central concept
# - Add ideas as they come
# - Group related concepts
# - Use colors and shapes for organization
# - Connect related ideas with lines
```## Integración e Incrustación
```bash
# VS Code extension features:
# - Create .excalidraw files
# - Edit directly in editor
# - Version control integration
# - Preview mode
# - Export capabilities
# Workflow:
# 1. Install Excalidraw extension
# 2. Create new .excalidraw file
# 3. Edit with full Excalidraw features
# 4. Save and commit to version control
```### Integración de VS Code
```bash
# Obsidian plugin:
# - Embed drawings in notes
# - Link to other notes
# - Search within drawings
# - Template support
# Usage:
# 1. Install Excalidraw plugin
# 2. Create drawing in note
# 3. Link to other content
# 4. Export or embed as needed
```### Integración de Obsidian
```bash
# Notion embedding:
# 1. Create drawing in Excalidraw
# 2. Export as PNG or SVG
# 3. Upload to Notion
# 4. Embed in page
# Live embedding:
# - Use Excalidraw share link
# - Embed as web content
# - Updates reflect automatically
```### Integración de Notion
```javascript
// Load external library
const library = await fetch('https://libraries.excalidraw.com/libraries/your-library.excalidrawlib')
.then(response => response.json());
// Add library items to scene
const libraryItems = library.libraryItems;
excalidrawAPI.updateScene({
elements: [...currentElements, ...libraryItems]
});
```## API y Automatización
```javascript
// Create elements programmatically
const rectangle = {
id: 'rect1',
type: 'rectangle',
x: 100,
y: 100,
width: 200,
height: 100,
strokeColor: '#000000',
backgroundColor: '#ffffff',
fillStyle: 'hachure',
strokeWidth: 2,
roughness: 1
};
const text = {
id: 'text1',
type: 'text',
x: 150,
y: 140,
width: 100,
height: 25,
text: 'Hello World',
fontSize: 16,
fontFamily: 1,
textAlign: 'center'
};
excalidrawAPI.updateScene({
elements: [rectangle, text]
});
```### API de Bibliotecas de Excalidraw
```javascript
// Batch create system diagram
function createSystemDiagram(services) {
const elements = [];
let x = 100;
const y = 100;
services.forEach((service, index) => {
// Create service box
elements.push({
id: `service-${index}`,
type: 'rectangle',
x: x,
y: y,
width: 120,
height: 80,
strokeColor: '#1971c2',
backgroundColor: '#e3f2fd'
});
// Create service label
elements.push({
id: `label-${index}`,
type: 'text',
x: x + 10,
y: y + 30,
text: service.name,
fontSize: 14
});
x += 200;
});
return elements;
}
```### Dibujo Programático
```bash
# Performance tips:
# - Use groups to organize complex diagrams
# - Limit the number of elements on screen
# - Use simple shapes when possible
# - Avoid excessive text elements
# - Regular cleanup of unused elements
# Memory management:
# - Clear undo history periodically
# - Export and reload for very large diagrams
# - Use multiple smaller diagrams instead of one huge one
```### Operaciones por Lotes
```bash
# Collaboration optimization:
# - Limit concurrent users (5-10 optimal)
# - Use voice/video for complex discussions
# - Assign areas to different team members
# - Periodic saves to prevent data loss
# - Good internet connection required
```## Rendimiento y Optimización
```bash
# Mobile features:
# - Touch drawing support
# - Pinch to zoom
# - Two-finger pan
# - Touch selection
# - Mobile-optimized toolbar
# Mobile limitations:
# - Smaller screen real estate
# - Limited precision
# - No keyboard shortcuts
# - Simplified toolbar
```### Diagramas Grandes
```bash
# Mobile workflow:
# - Start with rough sketches
# - Focus on major elements first
# - Use larger shapes and text
# - Simplify complex diagrams
# - Refine on desktop later
```### Rendimiento de Colaboración
```bash
# Performance problems:
# - Refresh browser tab
# - Clear browser cache
# - Reduce diagram complexity
# - Close other browser tabs
# - Check internet connection
# Collaboration issues:
# - Verify share link permissions
# - Check network connectivity
# - Refresh page for all users
# - Use incognito mode to test
# - Clear browser data
```## Uso en Dispositivos Móviles
```bash
# Auto-save features:
# - Local storage backup
# - Browser session recovery
# - Collaboration history
# - Export regular backups
# Recovery methods:
# - Check browser local storage
# - Use collaboration history
# - Restore from exported files
# - Contact support for shared rooms
```### Aplicación Web Móvil
```bash
# Supported browsers:
# - Chrome (recommended)
# - Firefox
# - Safari
# - Edge
# Feature limitations:
# - Some features require modern browsers
# - WebGL support needed for performance
# - Local storage required for saving
# - WebRTC needed for collaboration
```### Mejores Prácticas Móviles
```bash
# Visual hierarchy:
# - Use size to show importance
# - Color for categorization
# - Spacing for grouping
# - Consistency in styling
# Clarity guidelines:
# - Keep text readable
# - Use sufficient contrast
# - Avoid clutter
# - Group related elements
# - Provide clear labels
```## Resolución de Problemas
```bash
# Team workflow:
# - Establish drawing conventions
# - Use consistent naming
# - Assign ownership areas
# - Regular sync meetings
# - Version control for important diagrams
# Communication:
# - Use comments for feedback
# - Voice chat for complex discussions
# - Screen sharing for presentations
# - Clear action items
# - Document decisions
```### Problemas Comunes
```bash
# File management:
# - Use descriptive names
# - Organize by project/topic
# - Regular cleanup of old files
# - Export important diagrams
# - Backup critical work
# Version control:
# - Save major iterations
# - Use descriptive commit messages
# - Tag important versions
# - Branch for experiments
# - Merge carefully
```### Recuperación de Datos
```bash
# Creating reusable components:
# 1. Design component elements
# 2. Group related parts
# 3. Add to personal library
# 4. Share with team
# 5. Maintain consistency
# Library management:
# - Organize by category
# - Use clear naming conventions
# - Regular updates and maintenance
# - Documentation for complex components
# - Version control for shared libraries
```### Compatibilidad de Navegadores
```bash
# Presentation techniques:
# - Use layers to reveal information
# - Create step-by-step diagrams
# - Export frames for animation
# - Use colors to highlight changes
# - Progressive disclosure of complexity
# Storytelling with diagrams:
# - Start with overview
# - Zoom into details
# - Show before/after states
# - Use annotations for context
# - Guide viewer attention
```## Mejores Prácticas
https://docs.excalidraw.com/[Repositorio de GitHub](https://github.com/excalidraw/excalidraw[Documentación de API](https://docs.excalidraw.com/docs/api)
### Comunidad
- [Servidor de Discord](https://discord.gg/UexuTaE)
- [Discusiones de GitHub](https://github.com/excalidraw/excalidraw/discussions)
- [Comunidad de Twitter](https://twitter.com/excalidraw)
### Recursos
- [Colecciones de Bibliotecas](https://libraries.excalidraw.com/)
- [Galería de Plantillas](https://excalidraw.com/templates)
- [Tutoriales en Video](https://www.youtube.com/results?search_query=excalidraw+tutorial)