Open core software includes both open source and proprietary licensing. Proprietary code should be source-available but require a license or subscription to use.
Use permissive OSS licenses
OCV prefers to start companies around projects that have a permissive license (e.g., MIT, Apache, or BSD) or the possibility of relicensing. It’s best practice to use the same open source license as the project. We will consider projects that aren’t permissively licensed on a case-by-case basis, but advocate for MIT whenever possible.
Relicensing should be done through the influence of the author of the project or the key contributor in the community. If relicensing, release a blog post (example) explaining the rationale behind this change to the open source community.
Open source licensing guidelines
- Use the same license as the open source project
- MIT is the preferred open source license
- Use the Developer Certificate of Origin for managing contributor copyright
Make all code source-available
This might seem counterintuitive, but transparency in your proprietary code creates significant advantages. We recommend all OCV companies make all their code source available so anyone can contribute, even to the proprietary parts. There is not a great reason not to do this. Maybe competitors are copying you, but we’ve never seen a startup die because of this. Startups die because no one cares enough about them, no one is using their product, and their product is not improving fast enough.
License templates
The licensing for a repository should be stated in the master directory of the repository in a document titled “LICENSE”. Where different portions of a repository have differential licensing, it is best to be explicit about that differential licensing. The license document should describe explicitly which directories fall under which license and where specifically the software is proprietary.
It’s best practice to put proprietary features in a
/proprietary
subdirectory within the open source repository. Avoid naming the subdirectory /ee or /enterprise-edition. The licensing can be described in the subdirectories themselves under separate license documents referenced in the master directory in the format of:All content that resides under the "subdirectory/" directory of this repository, if that directory exists, is licensed under the license defined in "subdirectory/LICENSE".
Alternatively, you can delineate open source and proprietary code on a file-by-file basis, but it makes it really hard for people to kind of quickly get an idea what's proprietary and what's not.
MIT license template
Below is a standard template for OCV companies with an MIT open source license. Please copy, paste into the “LICENSE” document, and update the company’s legal name. This template needs to be updated by legal if the open source project is under an Apache or other permissive license.
Copyright (c) 20xx-present [Insert Company’s Legal Name Here]
Portions of this software are licensed as follows:
- All content residing under the "doc/" directory of this repository is licensed under the "Creative Commons: CC BY-SA 4.0 license".
- All content that resides under the "sa/" directory of this repository, if that directory exists, is licensed under the license defined in "sa/LICENSE".
- All client-side JavaScript (when served directly or after being compiled, arranged, augmented, or combined), is licensed under the "MIT Expat" license.
- All third-party components incorporated into the [Insert Company Name Here] Software are licensed under the original license provided by the owner of the applicable component.
- Content outside of the above-mentioned directories or restrictions above is available under the "MIT Expat" license as defined below.
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Proprietary license template
The [company name] Software license (the “Software License”)
Copyright (c) [YEAR]-present [company name].
Copyright (c) [YEAR]-present [company name].
With regard to the [company name] Software:
This software and associated documentation files (the "Software") may only be
used in production, if you (and any entity that you represent) have agreed to,
and are in compliance with, the [company name] Subscription Terms of Service, available at [url to terms] (the "Software Terms"), or other agreement governing the use of the Software, as agreed by you and [company name], and otherwise have a valid [company name] Software subscription for the correct number of user seats. Subject to the foregoing sentence, you are free to modify this Software and publish patches to the Software. You agree that [company name] and/or its licensors (as applicable) retain all right, title and interest in and to all such modifications and/or patches, and all such modifications and/or patches may only be used, copied, modified, displayed, distributed, or otherwise exploited with a valid [company name] Software subscription for the correct number of user seats. Notwithstanding the foregoing, you may copy and modify the Software for development and testing purposes, without requiring a subscription. You agree that [company name] and/or its licensors (as applicable) retain all right, title, and interest in and to all such modifications. You are not granted any other rights beyond what is expressly stated herein. Subject to the foregoing, it is forbidden to copy, merge, publish, distribute, sublicense, and/or sell the Software.
used in production, if you (and any entity that you represent) have agreed to,
and are in compliance with, the [company name] Subscription Terms of Service, available at [url to terms] (the "Software Terms"), or other agreement governing the use of the Software, as agreed by you and [company name], and otherwise have a valid [company name] Software subscription for the correct number of user seats. Subject to the foregoing sentence, you are free to modify this Software and publish patches to the Software. You agree that [company name] and/or its licensors (as applicable) retain all right, title and interest in and to all such modifications and/or patches, and all such modifications and/or patches may only be used, copied, modified, displayed, distributed, or otherwise exploited with a valid [company name] Software subscription for the correct number of user seats. Notwithstanding the foregoing, you may copy and modify the Software for development and testing purposes, without requiring a subscription. You agree that [company name] and/or its licensors (as applicable) retain all right, title, and interest in and to all such modifications. You are not granted any other rights beyond what is expressly stated herein. Subject to the foregoing, it is forbidden to copy, merge, publish, distribute, sublicense, and/or sell the Software.
This Software License applies only to the part of this Software that is not
distributed as part of [company name] Open Source (OSS). Any part of this Software distributed as part of [company name] OSS or is served client-side as an image, font, cascading stylesheet (CSS), file which produces or is compiled, arranged, augmented, or combined into client-side JavaScript, in whole or in part, is
copyrighted under the MIT license. The full text of this Software License shall
be included in all copies or substantial portions of the Software.
distributed as part of [company name] Open Source (OSS). Any part of this Software distributed as part of [company name] OSS or is served client-side as an image, font, cascading stylesheet (CSS), file which produces or is compiled, arranged, augmented, or combined into client-side JavaScript, in whole or in part, is
copyrighted under the MIT license. The full text of this Software License shall
be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
For all third-party components incorporated into the [company name]Software, those components are licensed under the original license provided by the owner of the applicable component.