Why is LocalCloud licensed under Server Side Public License and does it limit you?
Before we start talking about Server Side Public and other licenses, let's examine the main challenge faced by open-source cloud projects:
The main problem is finding sustainable funding to enable developers to focus on the project full-time and pay salaries to contributors. Open-source projects offer immense value, but monetization options are limited. Let's explore two common approaches:
- Sponsorship or donations from users: These can come from individuals or companies, but this source of income is often unreliable. Users retain access to updates regardless of whether they donate. We still haven't collectively reached a point where everyone understands the financial needs of maintaining open-source projects; developers work tirelessly while businesses leveraging these projects can earn substantial profits.
- Fully managed cloud versions of the open-source project where users pay a monthly fee: This model works well until other companies replicate your code, offer it as a service, and undercut your user base. MongoDB and Redis provide prime examples. Posts urging users to abandon these databases became common after the switch to the Server Side Public License (SSPL). Why the change? It's simple – cloud providers were making millions offering these databases as services, while MongoDB and Redis saw little of those profits. Imagine investing years building a project only for Amazon, Google, Microsoft, or others to profit from it, while you struggle to market your own cloud version. Companies assume these giants offer "reliable" services with guaranteed longevity, (though a look at https://killedbygoogle.com/ might challenge that notion). This is why MongoDB developed the SSPL.
Understanding the Server Side Public License
The SSPL primarily restricts one thing – you cannot sell a service directly competing with the SSPL-licensed project. If that's your goal, you'll need to negotiate a commercial license. Importantly, switching to SSPL shouldn't affect you unless you intend to offer "Database-as-a-Service" using MongoDB or Redis. The SSPL isn't as restrictive as the GNU General Public License (GPL), which mandates you open-source your own code if you utilize a GPL project.
When can you use the community edition LocalCloud?
LocalCloud's community edition is freely available on GitHub. It includes the agent for each server and a CLI to manage projects, deployments, tunnels, etc. But what types of projects can use this edition? The answer is simple – you can use it wherever you like, as long as you don't create a competing service that assists with project deployment. For instance, you cannot use the community edition to build your own PaaS; you'd need a commercial license, or you could use our managed service at https://localcloud.dev/
Why do we use the Server Side Public License?
To protect ourselves from companies replicating our code and selling the same service we offer, ensuring we can continue development and improvement of LocalCloud. But if we use the SSPL, why make the source code freely available at all? We believe projects should offer users the option to remain invested even if a paid/managed version becomes unavailable. Should LocalCloud cease offering managed plans, you could effortlessly migrate to the community edition. Contrast this with AWS potentially discontinuing Lambda Functions (a real possibility, as Google did with its IoT cloud service - https://www.iotworldtoday.com/connectivity/google-cloud-to-shut-down-iot-core-service). Such a move could force you to rewrite code, update cloud configuration, CI/CD, etc. – likely ending your project. LocalCloud eliminates vendor lock-in, your project remains safe and independent of our business decisions. If you find our plans too expensive, self-host LocalCloud. If our SLA doesn't suit you, self-host LocalCloud. While some open-source projects intentionally complicate self-hosting or limit documentation, we don't play those games. Check our docs to see how easy it is to deploy LocalCloud yourself.
Our Commitment
In exchange for the value we provide to the cloud community, we simply ask that you share LocalCloud with your network and consider using our cloud version. It's affordable, offers predictable costs, and features a web console for easy project management. We welcome your feedback at hey@localcloud.dev. Yes, the founders of LocalCloud still personally read and respond to project-related emails.