Wednesday, May 23, 2007

SEMF is waking up

After having thousands of drafts, planning, designing the SEMF is right now in the middle of the Implementations. The good part of the work already have finished. But Things are not seems easy as it will takes some more time than we what we really have. Projects submission were postponed for 2 months just giving away some time to test our luck.
Since I am doing working on Page Designer (Virtually the main component of the project). I should document it status right now. But for sure it s shaping nice. And it is just about to start breath.
Here What I have done so far with Page Designer..

1. Drag & Drop mechanism to add web component to the page..
2. Introduce containers for components(Components can contain containers) to design the layout.
3. Nice tabbed grouped properties for customizations of the component.
4. Nice Toolbar, but only one button working right now.
5. Code generations. Specially generations which doesnt involve scripting(Well, read the next point) is already completed..
6. Introducing a scripting language ( We call it 'SEMF Script') for databinding and action handling.
7. Tokenizers and passers were written for the SEMF Scripting. With full aware of token errors, parse errors.
8. Halfly written semantic handler for the parse tree which is not tested yet. This will be impossible to test untill some good part of the project is completed..
9. Generate PHP code and/Or javascript code for Databinding and action handling.
10. Built-in HTML Editor for HTMLText component using TinyMCE..
11. Good media Uploader - Store. (There are cut/copy and paste functionalities there)
12. Some good page lay outing for the Page Designer Environment itself.

Right now I am working on a design and a parallel implementation for databinding and action handling in client side. (That is javascript code generation.) I took some time to finish it, because i thought it would be both difficult and simple..

Things to do - Most Important thing running on my head now
===========================================
1. Finish a rough implementation of complete code generation (i.e php and javascript code for both client side and server side)
2. Test it.
3. Some rough unit testing framework at least at the end just for ease the further development if it is necessary.
4. Functions for support page navigation..
5. Component Editor if there is some time left. Just 2 more weeks.
6. Documentation mechanism.
7. Good Tool tip viewer.

There are a lot even only for the Page Designer. And there are many left(Virtually all, that were there when we start this project) for other components of the Project as well. So I stop here hoping I will update the projects with some new details in next few days.