<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/doory-open-source-canva-doizqt03s" -->

---
title: Doory – Open-Source Canva | daily.dev
description: Doory is an open-source, self-hostable design editor positioned as a free alternative to Canva, built with React 19, TypeScript, Fabric.js and Yjs on the...
canonical: https://daily.dev/posts/doory-open-source-canva-doizqt03s
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: Doory – Open-Source Canva | daily.dev
og:description: Doory is an open-source, self-hostable design editor positioned as a free alternative to Canva, built with React 19, TypeScript, Fabric.js and Yjs on the...
og:url: https://daily.dev/posts/doory-open-source-canva-doizqt03s
og:image: https://api.daily.dev/og/posts/doIzQt03S.png
og:image:alt: Doory – Open-Source Canva
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Doory – Open-Source Canva

**[Hacker News](https://daily.dev/sources/hn)** · 9 min read · 4 upvotes · 0 comments

## Summary

Doory is an open-source, self-hostable design editor positioned as a free alternative to Canva, built with React 19, TypeScript, Fabric.js and Yjs on the frontend and Django 5, DRF, Channels and PostgreSQL on the backend. It offers a full feature set including layers, animations, real-time co-editing, templates, and export to PNG, JPG, SVG, PDF, MP4 and GIF, all free with no account required. It can be self-hosted with a three-command Docker Compose setup, and is released under an Attribution Assurance License requiring author credit.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://github.com/shaongitbd/doory>

## Questions this post answers

### What tech stack is used to build the open-source Canva alternative Doory?

Doory uses React 19, TypeScript, Vite, Fabric.js, Yjs and Zustand on the frontend, with Django 5, Django REST Framework, Channels and PostgreSQL on the backend. It runs via Docker Compose with nginx, optional Redis, and S3-compatible storage for uploads, enabling real-time collaborative design editing entirely self-hosted.

_Developers evaluating self-hosted Canva alternatives can track projects like Doory on daily.dev._

### How do I self-host the Doory design editor with Docker?

Copy the example env file and set DJANGO_SECRET_KEY and POSTGRES_PASSWORD, then run docker compose up -d --build, followed by creating a superuser with docker compose exec api python manage.py createsuperuser. The web container serves the app and forwards /api and /ws to the backend so the browser only talks to one address, accessible at localhost:8080.

_daily.dev helps developers compare self-hosting setups before committing to a design tool._

## Community take

How the wider developer community reacted, aggregated from 2 discussions and 66 comments across hackernews (as of 2026-10-12).

**TL;DR:** The discussion is dominated by skepticism that the project is almost entirely AI/Claude-generated from a near-empty commit history, with heavy doubts about code quality, stability, and the credibility of its marketing copy; a side debate also breaks out over the license's practicality and whether vibe-coded open source projects deserve trust or use at all.

**Sentiment:** 8% positive · 17% mixed · 75% skeptical

**The case for**

- It's open source, which some see as valuable regardless of how it was built.
- One commenter called it impressive that an AI could nearly one-shot a full-featured editor like this.
- Detailed, constructive UX feedback was offered despite skepticism about the project's origins.

**The pushback**

- The commit history shows the whole project spawning from a single AI-authored commit, which many found alarming.
- Testers reported crashes and said it felt like a low-effort, buggy clone.
- The chosen license appears to require GPG-signed commits while providing no GPG metadata, making it effectively impossible to comply with when contributing.
- The 'Why people pick Doory' marketing copy is seen as fabricated, unsupported by the project's tiny commit/issue history.
- Commenters argue vibe-coded projects tend to lack proper engineering discipline, testing, and long-term maintenance.
- Canva itself is criticized as a poor product to clone, with complaints about alignment, text rendering, and templates.

**By community**

- hackernews (skeptical): Most commenters focus on evidence the project was almost entirely AI-generated from a trivial commit history, raising doubts about quality, the license's coherence, and whether such projects deserve trust, alongside a tangent about whether Canva itself is even worth replacing.

**Hottest debate:** Whether AI/vibe-coded open source projects like this one can or should be trusted, maintained, and used versus dismissed as unreliable slop.

**Open questions**

- Is the project actually stable enough for real use given reported crashes?
- Will the project receive ongoing maintenance and bug fixes beyond its initial AI-generated commits?
- How should the attribution license be interpreted given its apparent GPG-signing requirement with no supporting metadata?

**Highlights**

> Interestingly, Claude has generated a LICENSE file which demands commits & changes are GPG signed. But the repo's license file has no GPG metadata (nor does the rest of the app), so it's impossible for anyone to commit to, extend, or meaningfully change this code without violating the repo's license. In short, nobody can commit to, change, or meaningfully adjust this repository while adhering to its license.
> — [OtherShrezzing on hackernews · 2 comments](https://news.ycombinator.com/item?id=50054118)

> Cool 'Show HN' project but.. > Why people pick Doory For a project with 6 commits over 3 days? Who are these people? Anyone reading this, take it as a lesson to always read your LLM produced copy. They will make up $hit and it may cost you your reputation.
> — [sheepscreek on hackernews · 4 comments](https://news.ycombinator.com/item?id=50056147)

> A lot of what makes Canva stand out comes from its IP coupled to their ecosystem/product (templates, assets and stock photography), its otherwise a pretty simple tool with basic functionality (but with good UX) compared with more professional software like photoshop or illustrator, or Figma. I'm sure you can built an open source equivalent in terms of software, but I don't think it's really possible for open source to produce a true replacement or alternative. THAT ASIDE, it might be worth focusing on UX. This looks vibe coded, maybe it isn't. - The UI is broken in a few places (the tools text in the shapes menu) - Consider prioritising more important tools based on available space in the ui, the header is a bit cluttered. - Some of the tool menus are awkward to use, like in Canva those are in a side bar and when they open the have panels that don't disappear when their parent looses focus. Probably worth making sure you're not using their exact icons as well as these look pretty similar. - Your add page button is creating an awkward scroll which you could probably limit by exposing add page in a way that didn't do that. Maybe remove the add page button below the canvas,  as you already have an add page button in the bottom left, you should have more vertical space for the design as a result. - You've got several different export sharing options in the header side by side. Might be worth collapsing that into a menu to minimise clutter. Both tools like canva and more professional tools layout their UIs like this. By all means do don't it just because they are, but there is some rational here why they would. - There are two places in the header that talk about the save state on the left and the right (one saying saved, the other saying saved in the browser). Consider having consolidating that. - do you really want to place the copy "Sign up to keep it forever" next to the sign up button? do you have any reason this is likely to stand out from the rest of the UI features there? I reckon if not get rid of it. Or if it's that important get rid of anything competiting for its attention which right now is a lot of things. - you have a ellipses for a menu with a ton of options, in most software this is aligned to the left. If you've removed other things frmo the the head it may make sense to break that up in submenus so those pieces of functionality is more discoverable. - Your commment functionality requires sign up to use, keeping it there may help lead to signs ups, but if you're designing this as an open source tool, maybe you're less interested in growth hacking, it might make sense to remove it from the header as well when the user isn't signed in (at the same time keeping it there signals to people weighing up your product that that feature exists. - you have 2 layers of headers, is it worth utilising horitonzal space for some of your buttons and put them in the right hand side? Hopefully you can feed the above back into your agent on a loop lol.
> — [akst on hackernews · 3 comments](https://news.ycombinator.com/item?id=50051221)

> I don't understand why someome capable of self hosting would use a "Canva alternative" instead of something normal like Inkscape/Figma/... Canva is so bad. It's impossible to align stuff properly. Text rendering is awful. Official builtin templates have horrible kerning. It's genuinely one of the worst graphic editors I've used, and I'm not even remotely a professional designer. I don't want a "Canva alternative", I want a normal editor.
> — [flexagoon on hackernews](https://news.ycombinator.com/item?id=50053147)

> fully vibed low effort clone atually. it is now crashing while testing.
> — [v3ss0n on hackernews](https://news.ycombinator.com/item?id=50051351)

**Source threads**

- [hackernews](https://news.ycombinator.com/item?id=50049872) · 162 points · 66 comments
- [hackernews](https://news.ycombinator.com/item?id=50038115) · 1 points · 0 comments

## Similar posts on daily.dev

- [PewDiePie's free self-hosted image editor does what Adobe and Canva charge for](https://daily.dev/posts/pewdiepie-s-free-self-hosted-image-editor-does-what-adobe-and-canva-charge-for-ozchg96pc) · XDA Developers · 32 upvotes · 2 comments
- [I replaced Claude Design, Figma Make, and Replit with an open-source local-first alternative, and it saved me a fortune](https://daily.dev/posts/i-replaced-claude-design-figma-make-and-replit-with-an-open-source-local-first-alternative-and-it-r8w42watk) · XDA Developers · 0 upvotes · 0 comments

---

Tags: [#react](https://daily.dev/tags/react), [#typescript](https://daily.dev/tags/typescript), [#django](https://daily.dev/tags/django), [#self-hosting](https://daily.dev/tags/self-hosting)

[View this post on daily.dev](https://daily.dev/posts/doory-open-source-canva-doizqt03s)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"Doory – Open-Source Canva","url":"https://daily.dev/posts/doory-open-source-canva-doizqt03s","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/doory-open-source-canva-doizqt03s"},"datePublished":"2026-10-12T05:29:10.100Z","dateModified":"2026-10-12T14:45:41.746Z","description":"Doory is an open-source, self-hostable design editor positioned as a free alternative to Canva, built with React 19, TypeScript, Fabric.js and Yjs on the...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/44ed39d4d8caedac482167acc123064c?_a=AQAEuop","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/44ed39d4d8caedac482167acc123064c?_a=AQAEuop","isAccessibleForFree":true,"articleSection":"Hacker News","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Hacker News","logo":"https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/hn","url":"https://daily.dev/sources/hn"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/doory-open-source-canva-doizqt03s","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":4},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"react,typescript,django,self-hosting","timeRequired":"PT9M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Hacker News","item":"https://daily.dev/sources/hn"},{"@type":"ListItem","position":3,"name":"Doory – Open-Source Canva"}]}
{"@context":"https://schema.org","@type":"FAQPage","@id":"https://daily.dev/posts/doory-open-source-canva-doizqt03s#faq","mainEntity":[{"@type":"Question","name":"What tech stack is used to build the open-source Canva alternative Doory?","acceptedAnswer":{"@type":"Answer","text":"Doory uses React 19, TypeScript, Vite, Fabric.js, Yjs and Zustand on the frontend, with Django 5, Django REST Framework, Channels and PostgreSQL on the backend. It runs via Docker Compose with nginx, optional Redis, and S3-compatible storage for uploads, enabling real-time collaborative design editing entirely self-hosted. Developers evaluating self-hosted Canva alternatives can track projects like Doory on daily.dev."}},{"@type":"Question","name":"How do I self-host the Doory design editor with Docker?","acceptedAnswer":{"@type":"Answer","text":"Copy the example env file and set DJANGO_SECRET_KEY and POSTGRES_PASSWORD, then run docker compose up -d --build, followed by creating a superuser with docker compose exec api python manage.py createsuperuser. The web container serves the app and forwards /api and /ws to the backend so the browser only talks to one address, accessible at localhost:8080. daily.dev helps developers compare self-hosting setups before committing to a design tool."}}]}
```

