mrkeyoor.com_
Thu 24 Sept 19:59 UTC
AI Toolsevaluationupdated 26 Aug 2026

dyad review

Dyad is a desktop AI app builder that keeps the project and editing workflow on your Mac or Windows machine. You bring an AI provider key, describe the app you want, preview the result, and keep control of the generated files instead of working only inside a hosted builder.

+23stars / 7d
Verdict

Our Dyad run built in 143 seconds, but 9 of 6,350 tests failed and npm audit found 80 vulnerabilities, so this is a promising local builder with concrete maintenance work attached. Try it if owning the project files and choosing the model provider matter more than a spotless setup. Keep automatic changes reviewable, check the license boundary around src/pro, and do not roll it across a team before reproducing your Windows and provider workflow.

We ran it

Lab card: what happened when we ran dyadScreenshot of dyad (dyad.sh)
Install✓ · 85s1585 packages · 2167 MB
Build✓ · 143s
Tests✗ · 333s6332 passed · 9 failed · 9 skipped of 6350 (vitest)
Known vulns807 critical · 54 high · 14 moderate · 5 low (npm audit)
Repo3116 files~522,948 lines of source · 30.3 MB · 20 CI workflows

Answers from our run

Does dyad build from source?

Dependencies installed in 85 seconds (1585 packages), and the build succeeded in 143 seconds. We cloned commit b1e9d26 into a clean Debian container with 3 CPUs and no project-specific setup.

Do dyad's tests pass?

Not all of them: 6332 of 6350 passed and 9 failed when we ran the project's own test command (vitest). Some failures need services or credentials a bare container does not have.

Does dyad have known vulnerabilities in its dependencies?

npm audit flagged 80 known advisories in the dependency tree, including 7 critical at the time of our run.

Who should not use dyad?

Teams requiring every shipped feature under Apache-2.0: code in src/pro uses the Functional Source License 1.1, while the rest uses Apache-2.0.

What are the alternatives to dyad?

Bolt.new, OpenHands. Our Dyad run built in 143 seconds, but 9 of 6,350 tests failed and npm audit found 80 vulnerabilities, so this is a promising local builder with concrete maintenance work attached.

Setup3/5Desktop download is simple; source install used 2,167 MB and tests failed
Docs4/5Guides cover models, previews, versioning, integrations, and support
Community5/5Pushed August 2026 with fast releases and busy issue discussion
Maturity3/5Usable desktop product with active safety and platform regressions

Discussed on

  1. hnShow HN: Dyad – build AI apps locally, no cloud5 points

Who it’s for

Developers who want an Electron app builder with local project files and their choice of AI provider.
Small teams that prefer bringing API keys over putting every project inside one hosted builder account.
Builders who want GitHub sync, local previews, and database integrations in one desktop workflow.
Contributors comfortable with a large TypeScript and Electron codebase and its pre-commit checks.

Who it’s NOT for

Teams requiring every shipped feature under Apache-2.0: code in src/pro uses the Functional Source License 1.1, while the rest uses Apache-2.0.
Buyers who interpret local as offline AI: the README requires your own model keys, and provider calls still follow the privacy and availability terms of the selected service.
Anyone enabling automatic code application without reviewing the current safety discussion: issue 4383 asks whether actions can apply after a model stream ends abnormally.
Windows users who cannot tolerate desktop regressions: open issue 4359 reports a local request loop that froze the interface, and current reports cover Squirrel update 404 errors.
Teams expecting a clean dependency audit today: our npm install reported 80 known vulnerabilities, including 7 critical and 54 high.

Setup reality

Our sandbox installed 1,585 npm packages in 85 seconds and used 2,167 MB. The build succeeded in 143 seconds. Tests failed after 333 seconds: Vitest reported 6,332 passed, 9 failed, and 9 skipped out of 6,350.

The log tail shows proxy Content-Security-Policy tests failing with ECONNREFUSED on temporary localhost ports. It does not show why those listeners refused connections. Npm audit found 80 known vulnerabilities: 7 critical, 54 high, 14 moderate, and 5 low.

End users download the Mac or Windows app and supply model credentials. Contributors need Node, a userData directory for SQLite, npm scripts, and an Electron build for end-to-end tests. Database, GitHub, or publishing features add their own accounts and configuration.

Local project ownership is Dyad's clearest advantage

Dyad packages prompt-driven app building as a Mac and Windows desktop application. Projects stay on the local machine, and users supply their own AI keys. That changes the ownership model compared with a hosted builder: files are accessible outside the tool, the model provider can be changed, and leaving Dyad does not require exporting a project from somebody else's workspace.

Local does not mean self-contained. A remote model still receives whatever context Dyad sends under the provider's terms, and publishing or database integrations reach external services. The practical privacy gain is control over the project and provider choice, not an automatic promise that code never leaves the computer. A buyer should map each enabled integration before putting client code into a session.

The 2,167 MB install is heavier than the download pitch

Our commit b1e9d26 checkout contained 3,116 files, about 522,948 lines of source, and occupied 30.3 MB. Installing its source dependencies took 85 seconds, added 1,585 npm packages, and consumed 2,167 MB. The build then succeeded in 143 seconds. That is workable for contributors, though it is a substantial dependency tree for a desktop tool.

End users get a simpler route: the README points to downloadable Mac and Windows builds and says no sign-up is required. Development is more involved. The contributing guide identifies Dyad as an Electron app, requires a userData directory for its SQLite database, and documents npm scripts for startup, database migrations, pre-commit hooks, unit tests, builds, and end-to-end tests.

What happened when we ran it

Our Vitest command failed after 333 seconds. It reported 6,332 passed, 9 failed, and 9 skipped out of 6,350. The tail also reported 64 failed test files and 562 passed files. A large majority passed, but the command still returned exit code 1, which is the result a pull request or release job has to handle.

The visible failures were in src/__tests__/proxy_server_csp.test.ts, covering how the proxy preserves an application's Content-Security-Policy. Several cases ended with connect ECONNREFUSED against temporary 127.0.0.1 ports. The supplied log does not establish why the connections were refused, so we cannot blame container networking, a race, or a missing service. We can say the suite did not complete cleanly in the stated sandbox.

Npm audit found 80 known vulnerabilities in the installed packages: 7 critical, 54 high, 14 moderate, and 5 low. That count does not prove that every advisory is reachable from a packaged desktop build. It does make triage necessary. With 1,585 packages and an Electron application handling model keys, project files, local processes, and network calls, dismissing the audit as development-only would be careless without tracing each path.

Automatic edits need a fail-closed answer

Issue 4383 asks whether Dyad can automatically apply a complete action tag after the underlying model stream later ends because of a token limit, provider error, content filter, abort, or unknown state. The report requests testing through the actual auto-apply path and says accumulated multi-stream responses also need coverage. It does not claim the bug is confirmed; it defines a security-sensitive question that remains open.

That distinction matters for buyers. AI output can look syntactically complete even when generation ended abnormally. Until the behavior is resolved, keep auto-approval off for valuable repositories or put generated changes behind Git review and application tests. Release v1.12.0 added pre-commit hooks before agent checkpoints and work on agent delegation safety, which is useful movement, but it does not answer the separate auto-apply question by itself.

Provider and Windows bugs can stop the desktop flow

One open report shows a provider switch ending in an API error because a call ID exceeded the receiving service's 64-character limit. The issue asks for a better error message rather than documenting a general provider outage. Still, it is a reminder that provider interchangeability has protocol edges. Test the exact model gateway, fallback, and conversation history you expect to use.

Windows has current rough spots too. Issue 4359 reports more than 10 localhost requests per second, followed by a frozen interface even when the machine was offline. Two other August reports describe a Squirrel auto-update 404. Individual reports need reproduction, but a team deployment should validate installation, updates, sleep and resume, offline startup, and proxy behavior on the Windows image it manages.

The repository has two license zones

The README says code outside src/pro is Apache-2.0 and code inside that directory uses the Functional Source License 1.1 with an Apache-2.0 future license. Contributors to src/pro agree to that license. This split is easy to miss if someone sees the open-source label and assumes one permissive license covers the complete desktop product.

The project was pushed on August 26, 2026, two days after v1.12.0. GitHub listed 21,318 stars and 283 combined open issues and pull requests. Same-week releases and active triage indicate strong maintenance, while the issue volume fits a fast-moving product. Dyad is worth a local trial. Its failed tests, audit findings, safety question, and license boundary argue for a trial with controls, not immediate standardization.

Alternatives

ProjectWhat it isPick it when
Bolt.newAn open-source prompt-to-app builder centered on a browser development environment.pick this instead when a browser workspace is preferable to a Mac or Windows desktop app.
OpenHands gh↗A software-development agent that works against repositories and development tasks.pick this instead when the job is changing an existing codebase rather than visually building an app.

What people are saying

  1. [github-trending] dyad-sh/dyad

Sources

  1. Dyad README
  2. Dyad repository
  3. Dyad v1.12.0 release
  4. Auto-apply stream termination discussion
  5. Windows local request loop report
  6. Dyad documentation

More ai tools reviews

monty · Step-Code · agenticSeek · starnet · lap · stable-diffusion.cpp · the whole board →