# Penpot

Self-host the design file. Penpot is the open-source product-design tool: boards, components, prototypes — Figma and Canva without the seat.

**Replaces:** Figma / Canva

**Tier:** Easy

## Problem

Figma Professional is a Full-seat meter on every designer. Canva is a brand kit in someone else's building. Penpot is MPL-2.0, self-hostable, and still getting commits. You keep SVG-native files you can actually export.

## Stack

- [Penpot](https://penpot.app) — Open-source design and prototyping platform

## Estimated SaaS cost saved

| You stop paying | Typical / year | Self-host instead |
|---|---:|---|
| Figma Professional (10 Full seats) | $1,920 | Penpot on Railway |
| Canva paid seats | $1,200 | Same Penpot box |

**About $1,920 / year** on a small team, before you count lock-in.

## Deploy on Railway

Placeholder: Penpot (frontend + backend + Postgres + Redis + object storage). A volume for assets. No one-click template in this repo yet — Start on Railway.

[Start on Railway](https://c17.io/go/railway/penpot-design?from=%2Fstacks%2Fpenpot-design.md)

## AGENT_PROMPT

```
Replace Figma or Canva with self-hosted Penpot.

- Follow Penpot's compose: frontend, backend, Postgres, Redis, and object storage or a volume for assets.
- Bind HTTP to 0.0.0.0:$PORT. Set the public URL. Disable public registration after the first admin.
- Import one Figma file (Penpot's importer) or rebuild the one library that actually ships.
- Write AGENT_PROMPT.md and a cost table vs Figma Professional Full seats.
```

## FAQ

### Will this open .fig files?

Penpot imports from Figma. Treat it as a cutover, not a pixel-perfect clone of every plugin. Most teams move the library they still edit and leave archived Figma files alone.

### Why not Canva's free tier?

Free Canva is a vendor account. Penpot is files on your disk. Pick Penpot when the brand kit cannot live in someone else's login.

Source: https://c17.io/stacks/penpot-design
