If I create a Ruby implementation, what licenses can I use?

I plan on creating (or at least trying to create) a Ruby implementation of stmd based on the current JavaScript reference.
As such, am I allowed to license my work in anything other than the BSD-style license used for the reference implementation?



This is a good question. I don’t see why the MIT licence (common in the Ruby community) wouldn’t be okay, but perhaps one of the stmd developers could confirm this?

Related thought: Would it be easier to write a CommonMark gem from scratch or add tests to an existing implementation (Kramdown or GFM) to ensure that it is CommonMark compliant?

Disclaimer: I’m not a Lawyer.

As long as you only refer to the JavaScript implementation and do not copy anything over to your implementation, you can license your code however you like.

1 Like

Kramdown might be the easiest way to go.

If it’s a port then I’d say use the BSD license, hey it’s pretty good anyway. If you use the stmd.js or c implementation purely as a reference then I’d say you’re free to use what you want, but hey, why not BSD (^_^).

For reference, in the implementation I’m working on, in python, I wanted to stick to John’s absolutely great JS parser as close as possible so stuck to the term port and used a BSD license.

1 Like

Any particular reason? I do like Kramdown and use it for any projects that require Markdown support. The API is clean and the implementation is pure Ruby.

It provides the best ruby API both for end-users and for developing new markup support.

On top of that it has a good number of non-html outputs.

1 Like

Yeah, if you do not use any source code from the c or whichever implementation of the markdown, then it is up to you to define the license.