License updates for the tldraw SDK
We've adopted a new license ahead of our 2.0 release. It's free for non-commercial use and non-free for commercial use. Here's everything you need to know.
Hey, this is Steve Ruiz from tldraw. This week we launched the first beta release of the tldraw SDK. This is our first release to include our new license, which is adapted from the Scratch source code license.
This article contains everything there is to know about the new license and what it means for the product. If you’re a developer who is interested in using the tldraw SDK, this article is for you!
There’s a tldraw SDK?
If your intersection with tldraw lore is limited to using tldraw.com as a whiteboard, you may be surprised to learn that the website is essentially a big demo of our actual product, which is the software library that powers the application’s canvas.
This library is what we mean by the “tldraw SDK”.
Our elevator pitch for the SDK is that people love collaborative canvas apps, however building a canvas from scratch is prohibitively difficult—unless you build on top of tldraw, in which case it’s easy.
So far we’ve seen a lot of encouraging adoption: everything from total conversions like Subset.so, Definite, and Playgroundai to whiteboard-and-then-some uses like Jam.dev, Legend Keeper, and Roam.
The new license
Under our new license, you are permitted to use the tldraw SDK for non-commercial purposes. Examples of non-commercial use include using tldraw in a hobby project, a student project, or to contribute bug fixes or changes to the main code-base.
If you would like to use the tldraw SDK in a commercial product (or within a commercial enterprise), you will need to purchase a commercial-use license from us by contacting hello@tldraw.com.
Why dual license?
As a front-end component, tldraw presents unique challenges for commercialization compared to, for example, a pay-as-you-go hosted service or commercial software-as-a-service app.
That said, there are many ways to commercialize a project like tldraw. We’ve discussed selling a hosted collaboration service, similar to TipTap Collab, or splitting the library into free features and premium features like AgGrid, pricing based on usage like MapBox, or even turning tldraw.com into a teams-based SaaS app like Excalidraw+.
In the end, we chose to adopt a dual licensing model because we want to stay focused on the core product rather than on secondary products or services or upsells.
While the core product is solid and extremely capable for whiteboard-like products, there’s still a ton of work to do in order to make it ideal for other common use-cases, such as fixed-size canvases for presentations and annotation, more complex shape relationships for flow charts and visual programming, and better support for AI-powered collaborators.
Friction and thrash
Our previous versions of the SDK were released under the permissive Apache-2.0 license, though with a heads-up notice that we’d be changing this license in the future and a contributor license agreement protecting our right to swap licenses. We’re now in that future and swap we have.
License changes can sometimes be a rough time for an open source project, but my hope is our community will support us as we begin to capture some of the value that tldraw brings to the companies that use it in commercial products.
Q&A
Have questions? Here are some common ones so far.
Does this change effect tldraw.com?
No, this change has no effect on tldraw.com. The license discussed in this article only applies to the tldraw SDK. You can use the tldraw.com app, our VS Code extension, or any of our experiments like Make Real as often and wherever you want.
How do I buy a commercial license?
To buy a commercial-use license, contact us and we’ll take it from there.
How much does a commercial use license cost?
We’re still figuring that out. We’ll publish our initial pricing when we launch the 2.0; but in the meantime, please do contact us for our special “we haven’t figured it out yet” pricing, which so far has favored our early customers.
I’m using tldraw in a commercial product but we’re pre-funding / pre-revenue / testing it out. Do I still need a license?
Yes. Contact us anyway and we’ll work something out.
Do I still need a commercial license if I’m using the tldraw SDK in an internal product at my company?
Yes, internal products at companies is considered commercial use and so you will need to purchase a license.
Can I use the tldraw SDK in a classroom / student project?
Yes, you can use the tldraw SDK for teaching and student projects without needing a commercial license. See the license for more info on what is and isn’t considered commercial use. Contact us if you’re really not sure.
Does this license change apply to previous versions?
No, this change does not effect any previous versions. The 1.x version of tldraw will remain licensed under MIT forever. This version is essentially parked, however if we issue any updates or patches they will preserve that version’s MIT license. The pre-release 2.x versions released until Apache-2.0 will remain licensed under Apache-2.0.
If I’m already using the tldraw library in a commercial product, can I stay on an earlier Apache-licensed alpha version?
Yes, if you’re using tldraw in a commercial way you should stay on the alpha version until you purchase a commercial license and upgrade. Please do contact us though, we like you and would much rather find a way to bring you up to current releases.
Is tldraw still open source?
Mostly? You can still read our source code, fork the code, submit PRs, and use the product for free in certain non-commercial circumstances. It’s not Open Source in the strictest sense of being under a fully permissive license. Open source is a spectrum 🌈 and this was the best we could do.
Where do I go for help or more information?
If you have more questions, feel free to reach out at hello@tldraw.com. You can also find us on Twitter, Mastodon, or Discord. Our 2.0 release is on its way, stay tuned!
The mistakes in this blogpost are unprofessional. It should be "Does this change AFFECT tldraw.com?," not "effect". Same in the sentence "...this does not AFFECT any previous versions."