Prototype

Test drive ProtoUI

May 27th, 2008  |  Published in General, Javascript, ProtoUI, Prototype, Scriptaculous, UI

Well we have been recieving a lot of emails since our last post regarding the UI library. We decided to provide an early access to some of the tests for the library and documentation around it. There is a lot of work still to be done and we hope to steer the project according to the feedback we recieve.

You can check out demos and docs here.

Feel free to post your comments/suggestion here.

ProtoChart - Create charts using Prototype and Canvas

May 22nd, 2008  |  Published in Javascript, Projects, ProtoChart, Prototype

Well this isn’t the first library to do this and it won’t be the last. Its not even 100% ready for release but I thought it will be great to get some initial feedback before even releasing any code.

This library (as mentioned in my last post) is heavily motivated and inspired by Flot (a jQuery based plotting library). Its not complete yet and its not that stable yet. So you might see few odd things happening here and there.

You can check out some tests here.

As always, please do give your comments and suggestions but do note that this is just something that I have been working on in my spare time so my replies might be a bit slow and your requested feature might not show up in the code fast enough. But it will be noted and implemented sooner or later.

What’s keeping us busy?

May 21st, 2008  |  Published in General, Javascript, Prototype, UI

Apart from the usual clientel work, we are working hard to bring our UI library to a stable release. A lot of work has been done and a lot more needs to be done. So keep checking the blog for latest updates on that.

This past long weekend (for us canadians) I decided to experiment with canvas and javascript. The reasonable thing to do was to build a simple charting script. After few hours of work and inspiration from Flot (jQuery plotting engine) here is the result:

Plot

Of course, this is completely based on Prototype and it supports the basic line chart, scatter plot, bar graphs and maybe next weekend I will add pie chart support to it. The code is still a bit messy so I won’t be posting it right now. I will probably wait till I am done with pie chart support before release an alpha and let you folks test it out.

So yeah a lot is going on but that doesn’t mean we don’t have time to chit chat with others. Feel free to throw us an email if you want to discuss about your next project or if you just want to say hello.

ProtoUI - User Interface Lib (Prototype/Scriptaculous)

May 7th, 2008  |  Published in Javascript, Prototype, Scriptaculous, UI

Well its about time that we told you guys more about the User Interface Lib that we have been working on. Its far from being production ready but since we aim to launch it as an open source project we thought it might be useful to start getting some input from the community.

You can read initial docs but please note that documentation will be changing without any notice. You can also check out demos here.

User Interface Library - Prototype and Scriptaculous

April 8th, 2008  |  Published in Javascript, Projects, Prototype, Scriptaculous, UI

Lately I have been working on a User Interface library that runs on top of Prototype and Scriptaculous framework. Please note that this library is in very early stage and I am planning on releasing the source code soon. Still have a lot of issues to fix and address but I wanted to float the idea in public and get wheels rolling.

So what does this UI library have?

This library will have the following components:

  • Layout
  • Splitter
  • Panel
  • Button
  • Menu
  • Tab
  • Tree
  • and more…

These will be the foundation layer components. With support of Prototype based class inheritance I have also been working on some widgets such as:

  • CheckBoxTree
  • AjaxTree
  • AjaxPanel
  • ButtonMenu
  • ContextMenu
  • Toolbar
  • Accordion
  • and more…

As mentioned earlier I am still working towards first public preview release but if you have any suggestions or comments please feel free to post them here. I should have a first public preview ready for you soon (can’t promise dates yet)

This library is in no-way meant to compete against ExtJS or Dojo or other such libraries but I believe that with community support we can bring an amazing UI layer to Prototype and Scriptaculous framework.

The main focus is to provide solid foundation layer and believe that our community will build and contribute amazing set of Widgets.

Here are screenshots for Button and Splitter (using Firefox 2.0)

UI.Button

Splitter

ProtoFlow - Now supports Keyboard and Mouse Wheel Events!

March 31st, 2008  |  Published in Javascript, Projects, ProtoFlow, Prototype, Scriptaculous

Well it doesn’t get any better than this. I have been over whelmed by the response that community has given to ProtoFlow. While I am still working to fix some issues with image positioning, Fabian and  Martin posted a add-on for keyboard and mouse wheel support. After integrating their code I had to release it to general public asap. Thank you guys for your contribution.

By default both keyboard and mouse wheel support is turned on. To turn keyboard support off you can set options: enableKeyboard to false and to disable the mouse wheel events just turn enableMouse to false. Notice how the mouse wheel effect only works when your mouse is over the ProtoFlow object.

The latest code should be up here.

Small update to ProtoFlow.

March 26th, 2008  |  Published in Javascript, Projects, ProtoFlow, Prototype

I have released another small update to the script. It has now been tested in IE6 and IE7 along with Firefox 2.0 and Safari. I have also added docs to the project.

I think this script should be in stable condition now. If you stumble upon any bugs or have any suggestions please post them in your comments to this thread.

You can find the latest version for download here.

ProtoFlow Updated - Better Captions & Image Reflection!

March 13th, 2008  |  Published in Javascript, ProtoFlow, Prototype, Scriptaculous

March 17, 2008: I have updated the script again. It now supports <a> tags. More information can be found here.

After reading through comments on the original launch post I finally got a chance to update the ProtoFlow script for with latest changes.

It now has a better caption system. It now supports image Reflection!

Credit goes out to those who participated in original blog post with all the helpful comments and suggestions. I am using Reflection.js found here. Many thanks to the author.

So fellow developers/users as done previously please provide your feedback and comments.

You can find a better documentation here and code is located at the bottom of the page here

ProtoFlow first preview release…

March 10th, 2008  |  Published in Javascript, ProtoFlow, Prototype, Scriptaculous

ProtoFlow has been updated!

It has been a few weeks since my last post. I got busy with few other client work and didn’t really get any chance to polish up the ProtoFlow widget. So in order to get things moving, I am releasing the code under opensource. I know that there are many talented developers out there who would like to contribute to the code and help us improve it.

So without further delay here is the demo page and the zip file

I look forward to your comments and suggestions.

Update:

Here is the markup for the actual widget:

<div id="protoflow">

<img src="imgs/DSCN0940_91360.jpg"/>

<img src="imgs/stimme_von_oben_187192.jpg"/>

<img src="imgs/Tropfen_1_Kopie_201721.jpg"/>

<img src="imgs/farbraum_012_147508.jpg"/>

<img src="imgs/IMG_4906_199357.jpg"/>

<img src="imgs/Tropfen_1_Kopie_201721.jpg"/>

<img src="imgs/Fries_201253.jpg"/>

<img src="imgs/Fries_201253.jpg"/>

</div><ul id=”protoCaptions” class=”protoCaptions”>

<li>Caption 1</li>

<li>Caption 2</li>

<li>Caption 3</li>

<li>Caption 4</li>

<li>Caption 5</li>

<li>Caption 6</li>

<li>Caption 7</li>

<li>Caption 8</li>

</ul>

You can now initialize the Widget (usually done on page load) via:



Event.observe(window, 'load', function() {

 cf = new ProtoFlow($("protoflow"), {captions: 'protoCaptions'});

});

The options that you can pass in are:

options = {

   startIndex: 2, //which image or stack should the widget focus on after init

   slider: true,    //show or hide the slider widget

   captions: false //do you want to show captions?

};

In fact, the actual “holder” for the images can be anything. You can have a UL with a bunch of LI’s and all those LI’s would be used to create the flow effect. Captions are held in UL (I wanted to use ALT attribute in the images to hold captions but I think this way we can create a ProtoFlow effect out of all sort of HTML elements. Give it a try!

Coming Soon:

  • Autoplay - There is some code there right now but its not perfect so that needs to be done for next iteration

Introducing ProtoFlow

January 24th, 2008  |  Published in Javascript, ProtoFlow, Prototype, Scriptaculous

ProtoFlow - CoverFlow effect (or similar to coverflow effect) using Prototype & Scriptaculous.

Over the past day or so, I have been working on this class based on Prototype and Scriptaculous libraries that simulate CoverFlow effect found in Apple products such as iTunes and now standard feature on Leopard. I am far from done but the idea is to play around and learn so I am not in a big hurry to finish it off completely.

What is ProtoFlow?

It is a very simple class that would allow existing websites to just plug-n-play and create CoverFlow effect instantly. Here are quick features that it currently supports:

  • Generic stack: Elements that are being displayed does not have to be images. They can be any HTML element. So if you have a UL with bunch of LI’s in it you can create CoverFlow for that. (more on this when I release the code)
  • Caption (optional): You can attach captions to every slide making any list of images an impressive slideshow instantly!
  • Slider: Slide throw your list using Scriptaculous slider class.

I will be releasing the code for this later on but do let me know if there are other features that you would like to have in this widget.

Here is a quick screenshot for you (click to enlarge):

ProtoFlow