Category: Zephyr

going for a complete redesign of zephyr

zephyr2.jpg

I am planning for a complete redesign of zephyr, a tiny AJAXed MVC framework for PHP5 developers. So far zephyr has been downloaded 3,975 times from sourceforge and I got several impressive mails from users of zephyr which inspired me a lot. Now it’s time to a complete redesign. Zephyr has been a framework for many of you, but really we can make it more dynamic. Lets make it so easy, so amazing so that a guy who does not know even PHP will be able to use it.

I am planning to make it more “Human” – ha ha ha.

Zephyr Beta 2 : Upcoming Features

Yesterday night I added some great functionality in zephyr. Developers can use “Filtersâ€? in zephyr packages. In primary stage I just implemented two type of filters, one is “pre-filterâ€? and another is “post-filterâ€?. Pre filters are a simple object which is invoked when visitors input data. Before passing these data to actions, zephyr will call “process()â€? method of pre filter object. After processing them, these data will be passed to action.

Pre filters are of great use of you want to implement some sort of input filtering. Beside submitted data from users, Prefilters will also receive the action name which is responsible to handle those data. So it will remain flexible to developers.

Second type of filter that I implemented is “postfilterâ€?. After rendering the view, this filter is invoked with the rendered content and action name. So developers can polish the rendered output if they need to.

Day by day I will also add filter in different execution level of zephyr core. I am also planning to implement JSON support in zephyr. Here is a comprehensive list of implemented features for upcoming version of zephyr beta 2.0

1. Multiple Database Support (For both same provider and different provider)
2. SQLite support
3. Prototype is now a part of zephyr. So users can take advantage of this great library.
4. Automatic display of “loadingâ€? image when an action is called.
5. Multiple PHP file loading capability
6. Multiple Javascript file loading capability
7. Multiple pre action processors
8. Supports exchanging non printable characters as response and request.
9. Easy loading of PEAR packages.
10. Package Initializer, a special object that will be invoked while loading the package for first time.
11. Abstract DBInfo class, to simplify sharing db information.
12. flexible execute() method in DAO
13. Better exception management.

Zephyr : Preparing for Beta2

zephyr2.jpg I start development of second beta version of zephyr. This time I got two fellow developers with me. One is Raisul Kabir from Paradigm, an Exceptionally expert javascript and actionscript developer. He can contribute his expertise to upgrade the ajax experience of zephyr. Another one is Ramesh Bhardawaj, a decent developer from a1Technology.

I added Sam Stephensons famous Prototype library to zephyr yesterday night, at 2 AM :D. this library will save my sleep for many nights. I will also add some of these great Javascript libraries tonight.

1. MooFx
2. Nifty Corners
3. Scriptaculous
4. Tabifier

i am creating an update plan in details. Very soon I will publish it. But be sure, zephyr is going to be coolest AJAX based Framework for PHP5 Developers.

zephyr – the work done so far

zephyr is now a complete ajax based framework for php5. you will find it extremely small, fast and ofcourse really easy to learn and implement. i am very happy with the things i have done so far. last couple of days i have seperated the package layer so that you can easily manage your packages and deploy them in zephyr. also last night i have made the framework search engine optimized. you know basically ajax applications are not search engine friendly unless they are explicitely taken care off. thats why zephyr now supports a “permalink” to each and every action with custom action parameters. its so easy to make the permalink. now you can make SEO applications easily with zephyr.

so far i have used adoDB as the default DAL for zephyr. but i am planning to implement creole to test the performance. another cool thing you may find in zephyr is that you can use smarty as ur default templating engine. if you want anything else, sorry guys, i think you have to implement that urself. i keep a wraper over the template engine so that wont seem a big problem to you.

i would also test if i can use anything else instead of CPAINT. actually i am trying to eliminate the redundancy and code blocks which may degrade the performance of zephyr.