Doop
Doop: 오픈소스 멀티플레이어 디자인 캔버스 및 AI 에이전트용 MCP
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
Professional electronics design in a browser tab: zero learning curve, zero
installs.
ZiroEDA is a browser-native, open-source electronics design suite. It speaks the industry's open file formats
natively: projects made in KiCad open directly with no import step, no
migration, no retraining, while everything about the product (cloud projects,
sharing, and the AI-assisted design tools on our roadmap) is built web-first.README 전문 보기 ↗KiCad-compatible electronics design in a browser tab. Nothing to install.
Open the editor → · Try a demo project, no sign-up → · What's new (changelog) → · Join the Discord →
ZiroEDA is an open-source, browser-native port of KiCad 10: the schematic
editor, the PCB editor, and the tools around them, running in any modern
browser. It reads and writes KiCad's native files directly, so a .kicad_pro
made on the desktop opens here with no import step, and a project saved here
opens back in KiCad unchanged.
ZiroEDA extends the KiCad ecosystem; it does not replace KiCad. For very large, heavy designs, desktop KiCad is the right tool. ZiroEDA is for everything around it: small and medium projects, working from any machine, reviewing a board without installing anything, and sharing a project by link. Your projects live in the cloud end-to-end encrypted, so not even we can read them, and they stay ordinary KiCad files you can take back to the desktop at any time.
ZiroEDA is an independent project. It is not affiliated with or endorsed by the KiCad project; "KiCad" is a trademark of its respective owners. See PHILOSOPHY.md for how we relate to it.
| Schematic editor | KiCad's eeschema: symbols, wires, buses, labels, hierarchical sheets, annotation, ERC, symbol fields table, plot and print |
| PCB editor | KiCad's pcbnew: footprints, interactive router, zones with KiCad's own fill algorithm, DRC, board setup, 3D viewer, plotting and fabrication outputs |
| Library editors | Symbol editor, footprint editor, Assign Footprints (CvPcb) |
| Other KiCad tools | Gerber viewer, PCB calculator, image converter, drawing sheet editor |
| Libraries | KiCad's official symbol, footprint and 3D model libraries, served from the cloud |
| Cloud projects | End-to-end encrypted; open them from any device; share with collaborators by invite or link; export as ordinary KiCad files at any time |
| Open from GitHub | Any public repository's KiCad project opens read-only at designer.ziroeda.com/gh/<owner>/<repo>, with "Save a copy" to make it yours |
The port is ongoing and some dialogs and rarely used tools are not there yet. If something you rely on is missing, open an issue.
Let visitors open your public KiCad project in their browser with one click. Paste this into your README, with your own owner and repository name:
[](https://designer.ziroeda.com/gh/OWNER/REPO)
| The PCB editor (open this board) | The schematic editor (open it) |
| The 3D viewer | Cynthion, opened from its GitHub address |
Cloud projects are encrypted in your browser, before upload, with a key the server never sees. What we store is ciphertext; there is no master key on our side that opens it.
The trade-off is real: lose both your password and your recovery key and your encrypted projects cannot be recovered by anyone, including us. Plain-language details: docs/security.md. Design and reasoning: docs/encryption-design.md.
ZiroEDA is a TypeScript port of KiCad's C++ source, mirrored file for file
(eeschema/, pcbnew/, common/, libs/ …) against the KiCad 10.0.6 tag, so
behaviour can be checked against the original line by line. KiCad's own
kicad-cli is used as a test oracle: our file writers, zone fills and plots are
compared against what KiCad itself produces.
| Concern | Choice |
|---|---|
| Language | TypeScript |
| UI | React, with KiCad's wxWidgets dialogs rebuilt to the same layout |
| 2D rendering | WebGL, with KiCad's own stroke and outline fonts |
| 3D viewer | three.js |
| Auth, cloud, realtime | Supabase |
| Crash reporting | Sentry (opt-out, scrubbed) |
| Build / monorepo | Vite + pnpm workspaces |
| Tests | Vitest (1,500+ test files), mutation-tested |
ziro-designer/
designer/ # the app: launcher, editor frames, cloud sync, encryption
eeschema/ # schematic engine (port of KiCad's eeschema/)
pcbnew/ # board engine (port of KiCad's pcbnew/)
common/ # shared KiCad classes: shapes, text, units, plotters, widgets
libs/ # kimath, core, sexpr (lossless S-expression parser)
gerbview/ cvpcb/ pcb_calculator/ pagelayout_editor/ bitmap2component/
qa/ # unit tests (qa/unittests/<module>) + fixtures
See STRUCTURE.md for the full map and conventions.
pnpm install
pnpm -C designer dev # http://localhost:5173
pnpm -C designer build # typecheck + production build
pnpm -r test # all unit tests
pnpm -r typecheck
For development, a clone starts with no configuration. Accounts, cloud projects and sharing need a Supabase project; every integration is env-gated and simply switches off when its variables are absent.
| Variable | Effect when unset |
|---|---|
VITE_SUPABASE_URL, VITE_SUPABASE_ANON_KEY | Accounts, cloud sync and sharing disabled |
VITE_SUPABASE_STORAGE_BUCKET | Cloud file storage disabled |
VITE_SENTRY_DSN | Crash reporting disabled |
VITE_RELEASE | Falls back to the build's git SHA |
SENTRY_ORG, SENTRY_PROJECT | Source maps not uploaded (set in vercel.json) |
SENTRY_AUTH_TOKEN | Source maps not uploaded (secret, dashboard only) |
SENTRY_URL | Defaults to https://de.sentry.io/ |
To self-host the cloud side, apply the migrations in supabase/migrations/ to
your own Supabase project.
iv‖ciphertext, so an upload only ever adds, a download is
verified after decryption, and earlier versions stay restorable.designer/src/cloud/backend.ts); only
supabaseBackend.ts touches Supabase, so the sync logic is fully testable.Opt-out (Preferences → Common → Privacy). Reports are scrubbed in
designer/src/telemetry/scrub.ts: file names and URL query strings are
removed, and no account or IP address is attached. Tracing, session replay and
profiling are off: this collects stack traces to fix bugs, not usage
analytics. Source maps are uploaded to Sentry and never deployed.
GPL-3.0-or-later, the same as KiCad. See LICENSE.
Much of the engine is a TypeScript port of KiCad's C++, the icons are KiCad's, and the symbol, footprint and 3D model libraries are KiCad's official libraries. Code and icons are GPL; the libraries are CC-BY-SA 4.0 with the KiCad library exception. Full attribution: NOTICE.md.
Questions, bugs or collaboration: open an issue, chat with us on Discord, or write to [email protected].