I think Kureem already knows the incubation process. He is looking for a java champion. Since he already has a first draft of his proposal, I asked him to copy it so people interessed could have an idea what the project is about.
Sorry if my communication caused any inconvenience On Wed, Sep 4, 2013 at 8:50 AM, David Crossley <cross...@apache.org> wrote: > Kureem Rossaye wrote: > > Hello community, > > > > please find below a proposal I wish to submit to the ASF. I am new here > and > > was told that I could paste the proposal here. So here we are. > > That was misleading to simply say that. There is quite a process > which will all be beneficial. > > > Awaiting reply, recommendation and feedback and will be pleased to answer > > any questions. > > Please review the Incubator website. There are instructions > about the process for Proposals. > http://incubator.apache.org/ > In the top-left see the link to the "Proposal Guide". > > -David > > > Thanks in advance > > > > > > Kind regards, > > > > Kureem Rossaye > > Abstract > > > > Castafiore framework is a web frameworks, fully component oriented, ajax > > based, one page appplication. Although the framework can be viewed as a > > classical component oriented web framework like GWT, it has been designed > > and implemented with a particular goal in mind. It is to be able to make > > existing javascript libraries "java-able". Meaning that the framework > > allows to easily take a javascript library like e.g jquery ui and use the > > components and features via java. The integration of the javascript > > libraries need to be easy and natural. > > > > Actually companies like ext js and smartgwt have made their components > > "java-able" using GWT. I wish to provide an alternative to gwt that is > much > > easier, fast, lightweight, and much more productive. > > Proposal > > > > Castafiore framework has been designed and implemented with the following > > goals in mind > > > > 1. > > > > Fully object oriented > > 2. > > > > Simple API that is very close to html itself > > We wanted an API that is closer to html markup and javascripts event > > model. I believe that this would help web developers easily visualize > the > > rendering when reading source code. > > 3. > > > > Write a full application with only java > > 4. > > > > No need for compiler to convert to javascript like gwt.Javascript is > > rendered at runtime. > > 5. > > > > The same API can be used to make an software that is server centric > and > > or client centric. Meaning that the user can make part of his > application > > server centric and part of his application client centric. He can of > course > > choose to make the whole application client centric or server centric > > depending on the requirement. All of this using the same API. > > 6. > > > > Low memory footprint > > 7. > > > > Easy packaging of application. Everything can be packaged in a single > > jar. This includes images, css or javascript as well > > 8. > > > > Same API used to create custom components. No need to external set of > > API or specific programming technique to create custom components. > Creating > > a custom components should be done only the same way as writing an > > application. > > 9. > > > > No need for javascript to create custom components. > > 10. > > > > Although there is no need for javascript to create an application, it > > should be easy to integrate external javascript libraries and use > them in > > java codes itself. This should be done is a natural way just like we > would > > do in an HTML page. This should be like this so that javascript > library > > authors with some java skills find it natural and easy to provide a > > castafiore component together with the library. e.g. The author of > flexgrid > > should should find it easy to create a castafiore component thus > making his > > library usable directly in java. > > > > *Actually, I wanted to create a java web framework for javascript > > programmers. They should find it easy and fun to integrate and distribute > > their js libraries as a castafiore component. They will be able to > > distribute their libraries as a single jar. This is very convenient for > > java developers to just download the jar, include in classpath, and using > > the library, components and feature right away in their web application > in > > pure java. Furthermore the castafiore framework itself is very > lightweight > > with just 2 libraries and 1 web.xml entry. Even if the java developer is > > not using castafiore in his project, he should find it easy to just drop > > the 2 libraries + web.xml entry in classpath and start using it right > away. > > Very practical.* > > > > 1. > > > > Load external resources like css and javascript lazily and efficiently > > only when needed. > > 2. > > > > Loading of external resources can be done eagerly if the API user wish > > so. > > 3. > > > > The framework does not own the whole page. Meaning that an application > > created with the framework can be used in an already created page. > This > > allows API developer to use the framework only for very specific > purposes > > like for example a dynamic table, while at the same time using other > web > > framework like struts for the other sections of the application. > > 4. > > > > Although a whole application can be created using pure java, the > > framework should be able to integrate templates. > > 5. > > > > By default, there should be 100% separation of logic and presentation. > > Meaning that the API user should be able to take an html template, and > > dynamise it without needing to add any modification in the template. > > 6. > > > > On the other hand, if an API user is more script centric, he is able > to > > write groovy template, jstl templates or any other template engine. > > 7. > > > > The API user should be able to easily use any template engine he > wishes > > easily and naturally. > > 8. > > > > Event model is in 3 phase. Client-> server->back to client. API user > > should be able to write events in java that starts executing on the > > browser, then goes on the server if he wishes, then continue > executing on > > the browser. e.g. We should be able to add an event on a button that > starts > > by executing some javascript codes, then take some parameters and > execute > > codes on the server, then continue back with some parameter from the > server > > to execute some more javascript codes on the client. This technique > if used > > skillfully helps to create very smooth application that constantly > > communicates with the server without any flicker > > 9. > > > > Support for websocket when the browser supports it. > > 10. > > > > Support for HTML5 > > 11. > > > > Same API to write SVG applications. > > 12. > > > > Same API to write html5 canva application. > > 13. > > > > Support for browser back button > > 14. > > > > Crawlable by google crawler > > 15. > > > > Ultimately, the framework will come with a very rich set of re-usable > > components > > 16. > > > > Handle browser quirks > > 17. > > > > Built in validation > > > > Background > > > > The initial development of castafiore framework started back 3years ago > by > > Kureem Rossaye. Later it was mature enough to be used in production. A > > whole web based platform was created. It consists of applications like > > Inventory system, CMS, DMS, account system, organization management > system > > and also an advanced WYSIWYG online application builder. Many websites > > ranging from simple catalog website to advanced e-commerce website were > > also created using the framework. > > > > Now I wish to donate this framework to the ASF in the hope to build a > > community and see it strive > > Rationale > > > > While there exists many web frameworks, there are very few that address > all > > the requirements at the same time. There is a need for a web applications > > that at the same time can free user from javascript, html and css and at > > the same time easily integrate them when needed. There is also the need > for > > a web framework that at the same time can be server centric and client > > centric. For example, the front-end of a web site should be made client > > centric and the back end server centric. While the whole application can > be > > written in java, the web framework allows to create a whole application > > using traditional methods like html css javascript and page oriented > > framework like struts or spring mvc and at the same time implement only > > very specific parts using the framework. > > > > Today many javascript library providers and making their libraries > > “java-able”. e.g. SmartGWT or extjs > > > > They are using GWT for this purpose. Writing custom components with GWT > can > > be extremely complex, error prone, difficult to debug and stabilize. Not > > mentioning the compilation nightmare. And GWT is exclusively client > > centric. Connection with the server is done exclusively via web services. > > On the other hand, castafiore framework helps to make javascript > libraries > > “java-able” very easily. It is easy to debug and stabilize components > since > > there is no such thing as compiler to generate javascript. > > > > The framework is built upon jquery. Indeed jquery is an excellent > > javascript library. The framework basically acts as a thin layer over > > jquery. The result is a very simple and intuitive api which helps to > write > > highly dynamic applications with lesser code. Just like jquery. > > > > The 3 phase event model helps to bring the server very close to the > > browser. Meaning that with the same API, it is easy to interact with the > > browser and interact with the server. This helps to create very smooth > > running applications and at the same time interacting with the server and > > progressively render new components. > > > > Thanks to the framework we will be able to harness the new HTML 5 api > like > > websocket, workers, storage system, canvas and others using pure java. > This > > is pretty exciting. > > > > And hopefully, thanks to the ease at which we can integrate js libraries > as > > a castafiore components, we will be able to use already mature js > libraries > > in our java codes and interact with the server easily > > Current Status > > > > The rendering engine of the framework is completed and is being used in > > production. A large set of components are also being used. The javadocs > and > > documentations are 90% completed. However there are many components that > > need to be stabilized and of course, there is the need to create more > > interesting, useful and sexy components for the pleasure of every > > programmer. > > > > We need to create a good set of demo and sample codes > > > > There is also a need to create a website where contributors can publish > > their custom components together with their license and demo > > > > I intend to donate the WYSIWYG application builder to the ASF and host it > > online. This will be used as a sandbox or even can be used to create > custom > > components and publish them online itself, without the need to download > or > > install anything. I believe that this will help javascript library > authors > > to make their libraries “java-able”. To attain this objective, we need to > > stabilize and increase security level on the application. > > Meritocracy > > > > By submitting this incubator proposal, we’re expressing our intent to > build > > a diverse developer community around Castafiore that will conduct itself > > according to The Apache Way and use meritocratic means of accepting > > contributions. > > Community > > > > Castafiore is actively being developed and maintained within Archnet Ltd > by > > myself. By open sourcing it, I hope to attract contributors and build a > > vibrant community around the project. I will do my best to provide all > > necessary documentation and helps as swiftly as possible to help anybody > > interested in contributing on the project. > > Core Developers > > > > Castafiore is currently being developed by only Kureem Rossaye > > Alignment > > > > The ASF is a natural choice to host the Castafiore project, given the > goal > > of open sourcing the project and fostering a community to grow and > support > > the software. > > > > Castafiore is a web framework tested and developed on apache-tomcat and > > websocket features uses implementation provided by tomcat7 > > Known Risks Orphaned Products > > > > There is currently one single developer for this project. However, this > is > > the main reason why I want to host this project to ASF in order to > create a > > community in order make the project less dependent on only myself. I also > > express my intention to provide all necessary help and documentation to > > help those interested to get started with the project. > > > > Every aspect of the framework will be heavily documented to give clear > > understanding of the rendering engine in order to help anybody modify, > > enhance it. > > > > Furthermore, the framework is being used in production in my company > > Archnet ltd and has been deployed in several companies in Mauritius. > > Inexperience with Open Source > > > > Indeed, I have low level of experience in open source and has never > > contributed in any opensource, although I have always wanted to do so. > > However, by working with our mentor and the Apache community I believe I > > will be able to conduct myself in accordance with the Apache Incubator > > guidelines. > > > > > > > > Homogenous Developers > > > > Actually there is only myself who is developing this project. This is > > actually one of the reasons why I want to submit this proposal. In order > to > > be able to attract developers from various countries and companies. As I > > have already mentioned, I will be dedicated to provide everything > required > > to help get started with contributing on this project. > > Reliance on Salaried Developers > > > > I am the sole developer of this project. I am the director of my company, > > Archnet ltd. So there is no reliance on salaried developers for this > > project. > > Relationships with Other Apache Products > > > > The project is a web frameworks that has been developed and tested on > > apache tomcat. Furthermore, the websocket feature actually uses > exclusively > > the implementation provided by apache 7 > > > > > > > > An Excessive Fascination with the Apache Brand > > > > While we respect the reputation of the Apache brand and have no doubts > that > > it will attract contributors and users, our interest is primarily to give > > Castafiore a solid home as an open source project following an > established > > development model. We have also given reasons in the Rationale and > > Alignment sections. > > Documentation > > > > Project documentation exists and will be update online soon > > Initial Source > > > > https://github.com/archnetltd/castafioreframework > > Source and Intellectual Property Submission Plan > > > > All the codes are available online on github. > > https://github.com/archnetltd/castafioreframework/tree/elie/ui > > > > > > Since I am actually the only developer on this project, it is very easy > for > > me to change the license to whatever license that best suits the ASF. > > > > > > > > External Dependencies > > > > Castafiore depends on spring framework and commons-fileupload. They are > all > > Apache compatible. > > Cryptography > > > > Not applicable. > > Required Resources Mailing Lists > > > > - > > > > castafiore-private for private PMC discussions > > - > > > > castafiore-dev > > - > > > > castafiore-commits > > - > > > > castafiore-user > > - > > > > castafiore-issues > > > > Subversion Directory > > > > We prefer to use Git as our source control system: git:// > > git.apache.org/castafiore > > Issue Tracking > > > > JIRA Castafiore > > Initial Committers > > > > - > > > > Kureem Rossaye (kureem at gmail dot com) > > > > Affiliations > > > > Archnetltd > > Interested Parties > > > > - > > > > > > Sponsors Champion Nominated Mentors > > > > - > > > > > > Sponsoring Entity > > > > Incubator PMC > > > > > > > > > > On 30 August 2013 11:55, Kureem Rossaye <kur...@gmail.com> wrote: > > > > > Thank you > > > > > > > > > On 30 August 2013 10:26, Andy Van Den Heuvel < > andy.vandenheu...@gmail.com>wrote: > > > > > >> [image: Boxbe] <https://www.boxbe.com/overview> This message is > > >> eligible for Automatic Cleanup! (andy.vandenheu...@gmail.com) Add > > >> cleanup rule< > https://www.boxbe.com/popup?url=https%3A%2F%2Fwww.boxbe.com%2Fcleanup%3Ftoken%3DLK4DF6Zs01UeB4%252FoCwofDbHomqBqXAUD6TYuhBUJ3RV5HDPOXTN21VCBDkxuVKdfcsP4aI9%252FpEMWuRYoPDtVj5VYCyM4i8diwx5Q3T%252FhNHxI9iYGKhU9WVpH4O5sAWILuHv26s4Avib72hSHpe7Ymw%253D%253D%26key%3DurjvzkAYjBX6HETnLJA7bQnJ4%252BG5NKGFYaSvtHdDjBs%253D&tc_serial=15008921599&tc_rand=329277911&utm_source=stf&utm_medium=email&utm_campaign=ANNO_CLEANUP_ADD&utm_content=001>| > More > > >> info< > http://blog.boxbe.com/general/boxbe-automatic-cleanup?tc_serial=15008921599&tc_rand=329277911&utm_source=stf&utm_medium=email&utm_campaign=ANNO_CLEANUP_ADD&utm_content=001 > > > > >> > > >> Kureem, > > >> > > >> I think it's best to copy your proposal here, so people can see what > you > > >> are exactly trying to solve. > > >> > > >> > > >> > > >> On Fri, Aug 30, 2013 at 6:45 AM, Kureem Rossaye <kur...@gmail.com> > wrote: > > >> > > >> > Hi, > > >> > > > >> > I am Kureem Rossaye. I have create a web framework which is already > > >> being > > >> > used in production. Now I would like to give the framework > opensource > > >> and > > >> > of course the most natural place to start is Apache. I have already > > >> written > > >> > a proposal to submit to the incubation. However, I have the > following > > >> > questions. > > >> > 1. If I am not mistaken I need to hire a champion. Could you please > > >> help me > > >> > how to do this > > >> > 2. How I submit the proposal? > > >> > > > >> > Thanks in advance > > >> > > > >> > -- > > >> > Kureem Rossaye > > >> > Managing Director > > >> > > > >> > ArchNet ltd > > >> > R. Tagore Avenue, Mesnil > > >> > Mauritius > > >> > Mobile :+230 7159028 / Tel :+230 6867326 > > >> > Skype : arkureem > > >> > http://www.archnetltd.com > > >> > > > >> > > >> > > > > > > > > > -- > > > Kureem Rossaye > > > Managing Director > > > > > > ArchNet ltd > > > R. Tagore Avenue, Mesnil > > > Mauritius > > > Mobile :+230 7159028 / Tel :+230 6867326 > > > Skype : arkureem > > > http://www.archnetltd.com > > > > > > > > > > > > -- > > Kureem Rossaye > > Managing Director > > > > ArchNet ltd > > R. Tagore Avenue, Mesnil > > Mauritius > > Mobile :+230 7159028 / Tel :+230 6867326 > > Skype : arkureem > > http://www.archnetltd.com > > --------------------------------------------------------------------- > To unsubscribe, e-mail: general-unsubscr...@incubator.apache.org > For additional commands, e-mail: general-h...@incubator.apache.org > >