SelfHostStackOpen-Source Directory

Why Migrate Away from Figma & Miro?

Figma and Miro impose aggressive per-seat editor pricing that balloons design team budgets, while locking proprietary design files into closed cloud ecosystems. Self-hosting Penpot and Excalidraw delivers SVG-native vector prototyping, CSS Flexbox and Grid layout systems, and end-to-end encrypted architectural diagramming with unlimited team members on your own VPS.

Top 2 Recommended Open-Source Replacements

Tested, self-contained, and production-ready. Click any tool to inspect verified docker-compose configurations, hardware sizing, and deployment guides.

Penpot

MPL-2.0⭐ 34.5k+

The open-source web-based vector design and prototyping platform built on open web standards (SVG & CSS).

Min RAM2 GB
Min CPU2 vCPU
GitHub Repo ↗

✅ Advantages

  • Open web standard (SVG) native design files
  • Team libraries & components without per-seat fees
  • Seamless dev-mode inspection for frontend engineers

⚠️ Trade-offs / Limitations

  • Requires at least 2GB RAM for smooth backend rendering

Core Features

Full vector UI/UX design with native CSS Flexbox and Grid layout engines
Interactive clickable prototyping with transitions and animations
Real-time multi-user team collaboration and component libraries
Native SVG file format with zero proprietary file lock-in
Developer handoff mode with inspectable CSS markup and token export
📄 docker-compose.yml
Production Ready
version: '3.8'
services:
  penpot-frontend:
    image: penpotapp/frontend:latest
    restart: always
    ports:
      - "9001:80"
    environment:
      - PENPOT_FLAGS=disable-registration=false
    depends_on:
      - penpot-backend
  penpot-backend:
    image: penpotapp/backend:latest
    restart: always
    volumes:
      - penpot_assets:/opt/data/assets
    environment:
      - PENPOT_DATABASE_URI=postgresql://penpot:penpot123@penpot-postgres/penpot
      - PENPOT_REDIS_URI=redis://penpot-redis/0
      - PENPOT_SECRET_KEY=super-secret-penpot-encryption-key-32chars
    depends_on:
      - penpot-postgres
      - penpot-redis
  penpot-postgres:
    image: postgres:15-alpine
    restart: always
    environment:
      - POSTGRES_DB=penpot
      - POSTGRES_USER=penpot
      - POSTGRES_PASSWORD=penpot123
    volumes:
      - penpot_pgdata:/var/lib/postgresql/data
  penpot-redis:
    image: redis:7-alpine
    restart: always
volumes:
  penpot_assets:
  penpot_pgdata:

🚀 5-Minute Deployment Guide

  1. 1Spin up a 4GB RAM VPS (e.g. Hetzner CX22 or DigitalOcean Droplet).
  2. 2Install Docker with curl -fsSL https://get.docker.com | sh.
  3. 3Create directory mkdir -p ~/penpot && cd ~/penpot.
  4. 4Save docker-compose.yml and set your custom secret keys.
  5. 5Run docker compose up -d to launch frontend, backend, PostgreSQL, and Redis.
  6. 6Configure Caddy or Nginx reverse proxy with HTTPS for your design domain.

Recommended Cloud VPS for Penpot

Compare all VPS hosts →
Hetzner Cloud€3.79 / month

CX22 (2 vCPU, 4GB RAM, 40GB NVMe)

Smooth vector rendering and multi-user collaboration for entire teams.

Deploy on Hetzner →
DigitalOcean2.00 / month

Basic Droplet (2 vCPU, 2GB RAM, 60GB SSD)

Deploy instantly with 00 free trial credits for 60 days.

Claim $200 DO Credit →

Excalidraw

MIT⭐ 92.0k+

Virtual collaborative whiteboard tool that lets you easily sketch diagrams that have a hand-drawn feel.

Min RAM256 MB
Min CPU1 vCPU
GitHub Repo ↗

✅ Advantages

  • Zero friction and lightning-fast load times
  • End-to-end encrypted collaboration room
  • Minimal memory footprint (<100MB RAM)

⚠️ Trade-offs / Limitations

  • Focuses on architectural diagramming rather than high-fidelity vector UI prototyping

Core Features

Infinite canvas with hand-drawn aesthetic and clean shape snapping
Live real-time collaboration with end-to-end encryption
Export to high-resolution PNG, SVG, or JSON clipboards
Extensive community shape libraries (cloud infra, software arch, UI mockups)
Ultra-lightweight single Docker container setup
📄 docker-compose.yml
Production Ready
version: '3.8'
services:
  excalidraw:
    image: excalidraw/excalidraw:latest
    container_name: excalidraw
    restart: always
    ports:
      - "5000:80"

🚀 5-Minute Deployment Guide

  1. 1Deploy on any low-cost 1GB VPS.
  2. 2Create folder mkdir -p ~/excalidraw && cd ~/excalidraw.
  3. 3Create docker-compose.yml and run docker compose up -d.
  4. 4Point reverse proxy to port 5000 with SSL enabled.

Recommended Cloud VPS for Excalidraw

Compare all VPS hosts →
Hetzner Cloud€3.79 / month

CX22 (2 vCPU, 4GB RAM, 40GB NVMe)

Host Excalidraw alongside 10+ other lightweight tools on a single VPS.

Deploy on Hetzner →

Quick Specification Matrix

ToolLicenseMin RAMMin CPUGitHub RepoPrimary Advantage
Figma & Miro (Proprietary)Proprietary ClosedManaged CloudManaged CloudN/ATurnkey onboarding with vendor lock-in & paywalls
PenpotMPL-2.02 GB2 vCPUpenpot/penpotOpen web standard (SVG) native design files
ExcalidrawMIT256 MB1 vCPUexcalidraw/excalidrawZero friction and lightning-fast load times
Starter Stack Pack — $29

Skip the setup: get the production-ready stack

Don't stitch together configs from five different READMEs. Get all 5 production-hardened Docker Compose stacks — Postgres, Redis, SSL auto-renewal, and backup scripts — ready to deploy in minutes.

n8nVisual workflow automation
📊UmamiPrivacy-first web analytics
🛡️Uptime KumaUptime monitoring & alerts
🔐VaultwardenBitwarden-compatible vault
☁️NextcloudDropbox/Drive replacement
Get the Stack Pack — $29 →

One-time purchase · Instant download · Production-ready

esc
navigate open