Licensing · source-available · v4.11.2

Free until you ship it commercially

mocanvas is source-available, not open source. Personal projects, non-profit organisations, teaching and academic research, and every kind of development work — inside a for-profit company included — are free under the licence. The part that needs a written agreement with Symbio is shipping it in a commercial product, service or website.

What counts as commercial use?

The licence, in two lists

What you can do without asking

Both lists below are the licence, paraphrased. The text itself ships as LICENSE inside the package, so it is on your disk the moment you install mocanvas, and it is the version that governs — not this page.

No agreement needed

Free use


  • Personal projects that are not commercial.
  • Non-profit organisations, in pursuit of their non-profit purposes.
  • Teaching, study and academic research.
  • Development use: a developer's own machine, evaluation, testing, continuous integration, code review and staging — explicitly including a for-profit company evaluating mocanvas and building against it.
  • Modifying it and building derivative works, for any of the uses above.

Section 2 of the licence.

Needs a written agreement

Commercial use


  • A product, service, website or application that is sold, licensed, rented or offered for a fee.
  • Anything that earns revenue indirectly: advertising, sponsorship, subscriptions, transaction fees.
  • Internal tools used in the ordinary business operations of a for-profit entity.
  • Going live, in short. The agreement has to be in place before the thing you built with mocanvas is in front of the people it was built for.

Sections 1 and 3 of the licence.

Nothing is held back while you evaluate

There is no trial build, no feature gate and no key to request. npm install @mocanvas/mocanvas installs the whole library — the WebAssembly engine, the WebGL2 renderer, every built-in shape and the default UI. The licenseKey prop on <Mocanvas /> is accepted and ignored, and the package’s own types say so: our licence is a written agreement between people, not something the canvas checks at runtime.

So a team at a for-profit company can prototype with mocanvas, port an existing tldraw app to it, run it in CI and stand it up on staging before anyone signs anything. That is Development Use under section 2(c), and it is deliberate: nobody should have to buy this to find out whether it is fast enough.

Questions

The questions developers actually ask


I work at a company. Can I try mocanvas?

Yes. Development Use is granted explicitly to for-profit companies evaluating mocanvas — section 2(c) — and it covers your own machine, evaluation, testing, CI, code review and staging. Install it, port a screen of your app to it, run your own benchmarks. You need an agreement before what you built goes live, not before you start.


What counts as commercial use?

Using mocanvas in, or to build and run, anything that is sold or offered for a fee; anything that earns revenue indirectly through advertising, sponsorship, subscriptions or transaction fees; or anything used in the ordinary business operations of a for-profit company — an internal tool included, even one that is never sold to anyone. The test is not whether users pay for the canvas. It is whether the thing it is part of is a commercial thing.


What does mocanvas cost?

We quote per case, and we will not put a number here that we would then have to argue with. What we ask about is the shape of the thing: what you are building, roughly how many people will use it, and whether you want support or a say in the roadmap. Write to mocanvas@symbio.agency with a couple of sentences and you get an answer the same day — from the people who wrote the engine, because there is no sales team here to route you through.


What happens to the versions that were MIT?

They stay MIT. Every release published under the MIT licence remains available under it, on the terms it was released under, and nothing about this licence reaches back and changes that — section 9 says so. mocanvas 4.0.0 was the first release under the current licence; 4.0.0 and everything after it is governed by it.


Is mocanvas open source?

No, and we would rather say so plainly than stretch the word. The licence lets you read the source, modify it and build derivative works from it, but it restricts commercial use — which is exactly what an open-source licence may not do. Source-available is the accurate term.


Where is the source, then?

In the package you install. Every build ships full source maps with the original TypeScript inside them, so node_modules/@mocanvas/mocanvas/dist/*.js.map has the real files, comments and all. There is no public repository today — so if what you want is to browse it or open an issue, that is not available yet, and we would rather say that than let “source-available” imply a GitHub link that is not there.


Can I use it for a university course, or for research?

Yes. Teaching, study and academic research are free uses under section 2(d), for students and for staff, and there is nothing to sign and nobody to notify.


Can I fork it, or patch it for my own use?

Yes, for any of the free uses. You may modify mocanvas and create derivative works of it; if you pass it on, the recipient has to get it under this same licence with its notices intact, and only for those same uses. Commercial use of a fork is still commercial use. Practically: the source comes out of the source maps described above, not from a clone.


Is anyone else's code inside the package?

Some, and it is listed. NOTICE ships in the tarball beside LICENSE and names every third-party work we redistribute, with its own licence text in full. Today that is one entry: most of the default UI’s icons are Phosphor Icons, which is MIT. Their terms are theirs, not ours — MIT material stays MIT however you use mocanvas, and nothing on this page narrows it. Everything we wrote ourselves is under the licence above.


Does the canvas phone home, or stop working?

No. There is no telemetry, no licence server and no expiry. The licenseKey prop exists so an app migrating from another canvas does not have to strip it out, and it is documented in the package as accepted and ignored. What enforces this licence is a written agreement, not the software.

Getting an agreement

Tell us what you are building

Two or three sentences is enough to start: what the product is, roughly how many people will use it, and when you want to ship. We answer the same day, with a quote for your case rather than a tier you have to fit yourself into. mocanvas is built by a small team at Symbio, and the address below reaches it.

mocanvas@symbio.agency

mocanvas is built by Symbio. Free for non-commercial, non-profit and development use; commercial use needs an agreement. Not affiliated with or endorsed by tldraw.