First off, I am new to licenses and app stores.

There is an example app on a framework that has a Class file with much of the functionality I'll need for my own app. It's less than 1000 lines of code and distributed under the Apache License 2.0.

  1. As far as I know I can use/modify the code and just acknowledge the developer and include the license, but does this mean my whole project will be distributed under the Apache License 2.0 or just does it just apply to that source file?

  2. Once my project is done, would I be able to publish my app in the Mac App Store? Would I be able to sell it there?

The file is from an example project that pretty much demonstrates all which is possible in the framework, and using it in my project would save me a ton of time. However, if this is not possible I guess I'll just have to code it myself.

  • For the second part of your question you really should ask Apple. We have no way of knowing what they will accept or not.
    – yannis
    Commented Jan 22, 2012 at 9:10

2 Answers 2


but does this mean my WHOLE project will be distributed under the Apache License 2.0 or just does it just apply to that source file?

No. I think you can distribute your project in any form you like. Even if it is not open source that is okay - as long as you are giving due credit to the author who's class you are using.

I don't know if mac store would have other requirement -but it is perfectly legal on your part to publish your work with just the acknowledgement.


There are licenses which would require you to place your whole project under that license if you use any code which is -- the GPL (Gnu General Public License) is the most famous example of this, but there are others. These are sometimes referred to as "viral" licenses. The Apache license is not such a license.

The Apache license is in the tradition of "BSD" style licenses (including the original BSD license, the MIT license, and others), which only require you to keep code which is already under the license so licensed -- additional code which you write using Apache-licensed code is not "infected" by the Apache license, and you may place it under any license you choose.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.