跳到正文
原文
Hacker News· acley·· 5 小时前精选AI 评分55

Doory 发布开源 Canva 替代方案,支持 Docker Compose 自托管

Doory – Open-Source Canva

AI 导读

Doory 是一款浏览器内运行的开源设计编辑器,主打免费、无需账号即可使用,并支持 Docker Compose 一键自托管。它提供图层、蒙版、滤镜、动画、视频导出、实时协作和浏览器内背景去除等功能,导出格式覆盖 PNG、JPG、SVG、PDF、MP4 与 GIF。

推荐理由

把 Canva 的核心编辑器能力完整做成可自托管的开源项目,读者可以据此评估替代 Canva 的可行路径。

正文 · AI 翻译

Doory 是一款在浏览器中运行的全功能设计编辑器。制作海报、社交媒体帖子、故事、幻灯片、邀请函、简历、缩略图和名片:从模板或空白页面开始,编辑所有内容,并导出为 PNG、JPG、SVG、PDF、MP4 或 GIF。所有功能都是免费的,开始时无需任何账户,而且你可以在自己的服务器上运行整个程序。

🎬 观看实际演示

A real recording of Doory: picking the gig poster template, renaming the band, recolouring the dates, adding a star and opening the export menu

一段真实的、未经剪辑的录屏:选择一个模板,重命名乐队名称,重新着色日期,添加一颗星星,然后导出。

💜 人们为什么选择 Doory

🆓 真正的免费

No Pro plan, no locked templates, no watermarks, no ads. Every tool in the editor is there for everyone, from background removal to video export.

⚡ 一键开始

Open the editor and design. Guests' work is saved in the browser; create an account only when you want your designs in the cloud, and they move over in one step.

🏠 由你托管

One docker compose up runs the app, the API, the database and live collaboration on your own server. Every design and upload stays under your control.

🛠️ 真正的编辑器

Layers, groups, masks, filters, curved text, snapping, rulers, multi-page designs, animation, audio, presenting, comments and real-time co-editing.

🎨 设计所需的一切

The Doory editor with the gig poster template open

编辑任何内容

Click any text, shape or photo to change it. Fonts, colours, sizes, alignment and effects are one click away in the toolbar above the page.
The Animate panel with enter, exit and emphasis animations

让它生动起来

27 enter and exit animations, 12 emphasis effects and 16 page transitions, with music and sound effects from a built-in library. Present it, or export it as a video.
The Layers panel with its right-click menu

保持井然有序

Every object is a layer you can rename, lock, hide, reorder by dragging, group, or right-click to copy, duplicate, delete and arrange.
The export menu: PNG, JPG, PDF, SVG, video and GIF

随处导出

PNG with transparency, JPG, SVG and PDF, plus MP4, WebM and animated GIF, all made in your browser. Need print? Get a print-ready PDF with bleed and crop marks.

查看完整的功能列表

文字 标题、弧形文字、文字效果、字体搭配、项目符号和编号列表、开源字体目录以及你自己上传的字体
元素 形状、线条和箭头,约 25,000 个图标、表情符号和插图、贴纸、二维码
照片 上传、裁剪、蒙版和滤镜,一键抠图(模型在你的浏览器中运行),使用 Unsplash 或 Pexels 密钥搜索图库照片
布局 带锁定和隐藏功能的图层、组合、对齐参考线、吸附、标尺、不同尺寸页面的多页设计、魔术缩放
动画 时间轴上 27 种入场和出场动画、12 种强调动画和 16 种页面过渡效果
声音 内置 24 个音乐循环和 88 个音效的素材库(CC0),上传、录制旁白、剪辑和淡入淡出
演示 带有演讲者备注、计时、自动翻页、激光笔和第二个演示者窗口的演示模式
协作 可查看、评论或编辑的分享链接(可选密码保护),置顶评论,版本历史以及带有实时光标的实时协作编辑
品牌 包含你的颜色、字体和标志的品牌套件,在每个设计中一键可用
导出 PNG、JPG、SVG 和 PDF,MP4、WebM 和动态 GIF,全部在浏览器中制作,此外还有带出血和裁切标记的可打印 PDF

🖼️ 一开始就好看的模板

Ten starter templates: a gig poster, a wedding invitation, an event story, a sale post, a café flyer, a quote card, a resume, a YouTube thumbnail, a pitch deck and a business card

Doory 内置十个入门模板,每个都有其自己的调色板,使用开源字体并可完全编辑:演出海报、婚礼请柬、活动故事、特价帖、咖啡馆传单、引言卡、简历、YouTube 缩略图、融资幻灯片和名片。在管理后台添加你自己的模板,并按类别、尺寸和方向浏览所有模板。

The template gallery

Canva 是一款很棒的产品。Doory 是为那些想要同类型工具,但希望免费、开源且由自己掌控的人准备的。

Doory Canva
价格 免费,所有功能 免费版,付费 Pro 和 Teams 版
开源 ✅ ❌
在你自己的服务器上运行 ✅ ❌
无需账户即可设计 ✅ ❌
你的文件保留在你控制的设施上 ✅ ❌
实时协作编辑和评论 ✅ ✅
动画、视频和 GIF 导出 ✅ ✅
抠图 ✅ 在你的浏览器中 ✅
模板库 10 个入门模板,加上你添加的任何模板 一个非常庞大的库

🚀 用 3 条命令自托管

cp .env.example .env     # set DJANGO_SECRET_KEY (openssl rand -base64 48) and POSTGRES_PASSWORD
docker compose up -d --build
docker compose exec api python manage.py createsuperuser

打开 http://localhost:8080 并开始设计。web 容器为应用提供服务,并将 /api 和 /ws 转发到后端,因此浏览器始终只与一个地址通信。

添加入门内容(模板、图标、字体、音频)

新站点开始时是空的。运行后,你可以随时添加你想要的任何内容:

docker compose exec api python manage.py seed_gallery         # template categories
docker compose exec api python manage.py sync_fonts --popular 100
docker compose exec api python manage.py seed_templates       # the starter templates (add --update to refresh them)
docker compose exec api python manage.py seed_elements        # shapes and graphics
docker compose exec api python manage.py sync_element_packs   # icons, emoji and illustrations (download)
docker compose exec api python manage.py sync_models          # background removal model
docker compose exec api python manage.py sync_audio           # music and sound effects

值得了解的设置(.env)

设置 它的作用
SITE_URL 站点的公共地址,例如 https://doory.example.com(无末尾斜杠)
DJANGO_ALLOWED_HOSTS 站点响应的主机名,使用逗号分隔
SECURE_SSL_REDIRECT, SECURE_COOKIES true 使用 HTTPS,false 用于纯文本 http://
EMAIL_URL, DEFAULT_FROM_EMAIL SMTP,例如 smtp+tls://user:password@smtp.example.com:587(如果不设置,邮件会被输出到 API 日志中)
WEB_PORT, WEB_BIND 站点的发布位置(默认 0.0.0.0:8080)
INSTALL_CHROMIUM false 跳过服务器端 PDF 导出所需的无头浏览器
GOOGLE_CLIENT_ID 启用「Sign in with Google」
UNSPLASH_ACCESS_KEY, PEXELS_API_KEY 开启图库图片搜索
USE_S3 和 AWS_* 将上传文件存储到兼容 S3 的存储中,而非本地卷

本地开发

make setup     # virtualenv, dependencies, local database
make dev-api   # API on http://localhost:8000
make dev-web   # app on http://localhost:5173 (second terminal)

make help 列出其他目标(tests、lint、content)。

❓ 常见问题

它真的是免费的吗?
是的。Doory 没有付费方案、没有付费墙,也没有广告。所有功能对所有人开放。 我需要注册账号吗?
不需要。访客可以直接开始设计,其作品会保存在浏览器中。注册账号可以将设计保存在云端、方便你分享并使用品牌套件;注册后,访客期间的设计可一步迁移过来。 我可以将它用于自己的业务,或为我的用户提供托管吗?
可以,只要按照许可证的要求署名作者:保留许可证及 NOTICE 文件,并在运行中的应用里展示该署名信息。详见 许可证与署名。 我的设计存储在哪里?
访客的设计及其图片保存在该设备的浏览器中。登录后的设计存储在运行 Doory 的服务器上:如果你自托管,那就是你自己的服务器。上传文件可以保存在本地卷或兼容 S3 的存储中。

🧱 技术栈

React TypeScript Vite Fabric.js Yjs Django PostgreSQL Docker

浏览器端使用 React 19、TypeScript、Vite、Fabric.js、Yjs 和 Zustand;服务端使用 Django 5、Django REST Framework、Channels 和 PostgreSQL;Docker Compose 配合 nginx,以及可选的 Redis 和兼容 S3 的存储。

🤝 参与贡献

欢迎提交 Bug 报告、想法和拉取请求。可通过 issue 来报告 Bug 或提出功能建议。如遇安全问题,请通过仓库的 Security 标签页私下报告。

如果 Doory 对你有用,给一个 ⭐ 可以帮助更多人发现它。

📜 许可证与署名

Doory 基于 Attribution Assurance License 发布。你可以使用、修改和再分发它,包括用于商业目的,但 你必须署名作者:保留许可证和 NOTICE 文件,并在运行的应用中显著展示以下署名:

Doory 作者 Siam,Doory 的创建者与维护者 — https://github.com/shaongitbd/doory

第三方软件、字体和内容保留各自的许可证;详见 THIRD_PARTY.md。


由 Siam 与 Doory 兔子精心制作。

来源:Hacker News · github.com