We have received the following grant application "Nile - Visual Web App Framework Separating Code From Design Multi Lingual And Multi Theme". Please leave feedback in the comments field by September 25th, 2014.
Name:
Ahmed Amin Elsheshtawy
Amount Requested:
USD 10,000
The main idea in this framework is to separate all the html design, text, and layout from programming with easy interface like Android.
The framework uses html templates for the design with special xml tags for inserting the dynamic output into the templates.
All the application text is separated in language files in xml format supporting multi lingual applications for easy translating and modifying all the text. The framework supports SEO links and routing in many ways.
The framework build on Modern Perl using Moose for easy interface.
The entire framework uses object oriented style for a unified and clean interface like working with Java.
This framework will highly reduce the development time of a powerful and modern web application in Perl as you can build a full working modern web application with routed URL, template driven multi lingual database driven in few lines of code like Android.
I am working on this project "Nile" framework over a year and I already released it on cpan.org or github in alpha versions:
https://github.com/mewsoft/Nile
The main idea of the project has been released as a module on cpan and github.
Some of the main features of the framework:
Separate coding from design
Multi lingual applications
Multi theme applications
SEO URL friendly
Routing
Plugin based
Full OO style
Shared application context
Modern Moose based
Helper classes for files, pagination, request, response, XML, database, Serialization, Router, Dispatcher, Language, Logs.
Helper classes for shared Config (XML based files), Settings (database based), Vars.
Views class for easy working with dynamic templates.
Applications can be build with inline actions routing for quick applications or routed to plugins.
Still I have a lots of ideas to be implemented and modifications based on developers and community feedback.
The first alpha version has been released.
Subsequent alpha versions is being released everyday.
New sub modules are being added every while.
New ideas added everyday.
Beta versions will start after main API is been stable.
Final versions will be within one year of working full time.
Considering feedback from the Perl communities and Developers.
Keep working on developing the framework and maintaining it.
I already started on this project over a year now and work full time on it and I will keep working on it for a long time as it is expected to be a great support for the Perl developers and the Perl community.
The first stable release for production I expect to be within six months working full time.
The framework alpha version is released on cpan https://metacpan.org/pod/Nile and work on it will continue forever by receiving feedback and feature requests from all the developers all over the world. Until version 1.00 the API will be unstable.
My short resume is located here online: http://cv.mewsoft.com/CV.pdf
I am working with Perl since 1998 as a self-hired for my online personal business at http://www.mewsoft.com as a developer for Auction software, classifieds software, pay per click/impression software, forums, etc. for my own business.
I have also a RHCSA and RHCE training and have a good experience with Linux and *nix systems and server issues.
I also I just started Java and Mobile Applications.
This seems to be a proposal for a web framework. Please can you explain what advantages this project has over:
a) Catalyst
b) Dancer
c) Mojolicious
d) Other frameworks on the CPAN
Hello Mark,
Yes this is a web framework, the main difference and advantages of this framework is to simplify the web application design similar to Android by separating the coding from the layout design so a web designer could work on designing the layout using almost pure html templates while the programmer is doing the coding, the template system here uses special XML tags for dynamic output. The framework also introduces the concept of Widgets to simplify the layout design.
Other features listed above is direct support for multi lingual applications, the views or templates system here is different from any framework. You can check the alpha/beta versions already released on cpan https://metacpan.org/pod/Nile.
The entire framework idea is the ease of use without need to any talent.
I second Mark's comment.
Hi Ahmed,
First: I'm happy to see more grant applications, I think that's a good thing.
You're asking for a lot of money (compared to the typically grant request), and for something where there are a number of very active projects with matur{e,ing} frameworks. Those two facts (large $$, multiple well-regarded incumbents) means the bar is going to be set very high for your project. Even before details I was thinking "that could be ten good little projects at $1k, or five decent-sized ones at $2k".
Your first point in your response above was "separating coding from layout". Can you say what problems Catalyst, Mojolicious and Dancer have on that point, and what Nile does differently that will make life significantly easier / better for Perl web developers please?
You also said "ease of use without need to any talent", which I read as "lowering the barrier to entry for web development", which is a laudable goal, but it's one of those generic statements that no-one could disagree with, like "have good performance". In what *very specific* ways will you make Nile easier to work with than the existing frameworks?
Perl has a lot of web frameworks. What Perl really needs is an awesome app built on top of one of those frameworks. For example, something that could compete with Wordpress. Something on this level would be a direct benefit to the entire Perl community.
So far, our abundance of frameworks have not matured into any such App. How will Nile be different?
Hello Dan,
You are absolutely reading my brain and saying my idea which I was not going to declare at this time, you are thinking exactly what I am planning to do.
My plan after I make the Nile framework API stable by sharing and getting feedback from the Perl community, is to start adding the real world web applications components to be plug and play in any web applications.
For example, will start by adding Accounts module for users registration and authentication etc through all online services like Facebook etc., module for blog, module for classifieds ads, module for banner system, module for Auction system, module for shopping cart, module for a mall application, module for a pay per click/impression application, module for a forum, module for a social networks like Facebook, twitter etc., module for unified payment system and many other ideas I have in mind.
I am already very familiar with most of these applications/modules as I already developed these applications on my personal business website http://www.mewsoft.com including Auctions, classifieds, pay per click/impression search engine, forums, blogs, banners, wanted ads, stores etc.
I am planning also to create a centralized admin module that is smart to manage modules and their settings and the entire application and its plugins/modules, please have a look at my auction system software admin center here: http://mewsoft.com/app/admin/ such admin center should be made to host all your modules/apps/plugins etc.
Please you and everyone here I'd ask to spend some time reviewing the basic framework idea which is already published on cpan here: https://metacpan.org/pod/Nile please browse the Sub modules which have more details.
Yes also I am very familiar with wordpress code and I wonder when I see the main code very basic none OO and templates and themes are pure php coding, here comes my Nile framework which I said above I am separating coding from design supporting almost pure html templates/views, widgets, multi lingual, multi theme etc.
I am planning to compete with wordpress, Joomla and similar famous applications, here comes the needs for easy and powerful modern Perl framework which I am trying to do.
I have plans to spend the rest of my life of this project but I need real support and sponsors.
Hello Neil,
First please read my reply to "Dan Wright" here. Please also please browse the current beta versions released for the Nile framework here: https://metacpan.org/pod/Nile and browse the Sub modules which have more details. I know there are many frameworks on cpan and I am very familiar with them all and studied them all but did not find what I want exactly based on my personal experience in developing web applications with easy html templates, widgets based, support for multi lingual and multi theme without coding, modern coding based on modules like Moose. This will not be only a framework, but will be a core for many plug and play web applications components like I said in my reply to Dan Wright.