Client Technology Choice - Any HTML5/Canvas libraries as capable as Flash/Flex?
I know similar questions have been closed for it being "impossible to answer objectively", but stick with me here.
I built a prototype in Adobe Flex, they (customers) liked it. Everything was fine until they later told me that iPads / iOS needs to be supported too.
I checked out Adobe's Packager for iPhone. We're evaluating that and we will know if it works out in a couple of days. (We need to get through Apple's red tape and certificates raj so this angle is delayed by a few days!)
There is a growing voice for using HTML5/Canvas as a technology platform itself. And despite being quite proficient in Flex, I think this makes sense.
I'm in need of a HTML5 library that can:
- Render "widgets" i.e. containers with forms and components (this should be easy and possible using POHJC - Plain old HTML, JavaScript and CSS ;-) )
- Provide a Tree like control for laying out some data
- Provide a Canvas where data structures can be represented as basic shapes
- Provide drag and drop capabilities between Trees, Buttons and Canvas
- Provide some sort of Tab Navigator c开发者_开发百科ontainer (I guess JQuery works here)
- Interact with back-end services (JSON/XML calls will be okay, but mapping directly with back-end entities will be awesome!)
- Renders on latest versions of major browsers, Android OS and iOS (WebKit for mobile?)
Am I asking for too much?
- I'm ready to give JQuery & JQuery UI a try.
- I looked at Sencha / ExtJS but it seems we need to maintain two code bases one for normal browsers and the other for mobiles (is that correct?)
- Are there any other JS libraries worth trying out?
My concerns areas are
- Single code base, I don't want to suggest to them that multiple code bases for the client need to be maintained. That's a last resort option and would lead to complete ruling out of HTML5 with Flash apps and native apps being developed.
- Canvas capabilities - I don't want to work with raw canvas and shape tags. This too is a last resort option. Is there any abstraction available?
- Integration with back-end services, obviously I need some capability here!
Help me out. Communitywikify this if required.
Thanks, Sri
How about trying Vaadin?
http://vaadin.com/comparison
I do construe its irrelevant to your question, but still this framework can help in great deal. I still use Flex and PHP as main base for many application, but actually fell in love with Vaadin and started using it for my new projects.
Grant Skinner the flash guru is working on a html5 libary. It has some features you requested. It is still in development.
The new Canvas element in HTML5 is powerful, but it can be difficult to work with. It has no internal concept of discrete display elements, so you are required to manage updates manually. The Easel Javascript library provides a full, hierarchical display list, a core interaction model, and helper classes to make working with Canvas much easier.
The libary is called easeljs, you can find it here : http://easeljs.com/
For the normal html and css manipulations without html canvas JQuery is very easy to learn.
精彩评论