Search code examples
phpopen-sourceframework-design

How to go Open Source & Get Community Support


I have developed a PHP framework (MVC ofcourse) and have named it EZPHP, it is almost finished and will be made public soon.

My questions is that how do i make it open source project or what to do to make it so and where to submit it?

How to get other developers from around the globe to work on or extend this project like there are many developers from around the globe working on php and making it a superb scripting language.

In simple terms, i want to go open source with support from rest of the great developers from around the globe.

Thanks in Advance :)


Solution

  • Its going to take quite a large investment of time on your part. Its not just any typical open source project, its a MVC framework.

    You should create a site that puts the learning curve at next to zero, similar to Code Igniter's 'blog in 20 minutes' screen cast. Go an extra step and create some bundled examples .. blog, forum, shopping cart, reddit-like news feed aggregate, etc. If you want me to try a new framework (I'm one of the people who would happily play with it and send patches), you need to give me a base from which I can dive in and build my first app by hacking your example code.

    Release early, release often. Make sure your project shows up on the front page of FreshMeat once a week for a few months.

    As your code is going to be the core of many applications, I suggest using a non-viral license with the least possible restrictions. The 3 clause BSD license, MIT license or Apache license would be good choices. Avoid the GPL2/3 (though LGPL 2/3 would be good) and don't even consider the AGPL.

    Finally, good project management is what makes a great project. Be sure not to neglect adminstrava such as documentation, keeping bug trackers updated, making sure tests give adequate coverage analysis, etc. Nothing screams 'good investment of my free time' louder (to me) than a project that goes just a little slower in order to maintain organizational sanity .. especially when dealing with a framework.