Honestly, I'd just make 2 repos if possible. One open source; the other that includes the first one as a library, that has a commercial licence.
Then instead of the "open core" debate (which whenever it can be solved by 2 repos seems specious), you have an open source piece of software and you get points for letting people see your enterprise licenced source code as well.
Open-source founder of another startup/open-source project with an ee piece [1]
Separating the repos is a HUGE hassle which is why you never see it anywhere. Doing it once is a small cost but maintaining is a huge burden on teams that are already too small. In practice it does not change anything so most projects will choose to suffer nit-picks.
Question: Why not call your self an open-core founder? My point is, a license model should not be abused an advertisement term. The definition of open-source is pretty straight forward. Also the term open-core. And i do not agree, that is doesn't change that much. From a marketing standpoint, it really does. As the term "open-core" is so much weaker than "open-source". It is a HUGE hassle so sell this, instead of the other. And is classical wording BS and the wrong label as the open-core is much more precise. At least for me, i would not have clicked on this if labeled open-core. I guess that is why projects don't want to do it. But even worse, and that is why i think it is footgun, after reading the actual license terms, i felt fooled and leaving for ever. And that's sad part of this story.
How do you define open-core ? We and I suppose it's the same for supertokens literally only have features in ee that large enterprise would care about like scaling to hundreds of workers. Would you prefer that we never develop those features ? What difference does it make if we develop those plugins in the main repo versus another one ? Would you prefer that those features to be hidden from sight so you cannot even read the source ?
I might be wrong but open-core is for me products that expose the minimal amount of features as open-source but are only really usable with the proprietary glue. That is not the case for us.
That is not a strict understanding of that term though! That is just an anecdotal opinion. Open-core is where part of the codebase is open, while another part is not. Plain and simple.
And that is not the same as Open Source, which is absolute. The whole reason the term open-core came about was to disambiguate projects that could not claim 100% open code, and make it easier for consumers to pick based on that commitment (or not).
Either you're open source, or you're not. Open-core is not open source. Just be transparent and we're cool.
Then instead of the "open core" debate (which whenever it can be solved by 2 repos seems specious), you have an open source piece of software and you get points for letting people see your enterprise licenced source code as well.