Beefy Boxes and Bandwidth Generously Provided by pair Networks
XP is just a number

Libraries for web based UI (complex one)

by Jenda (Abbot)
on Nov 24, 2008 at 20:09 UTC ( #725681=perlquestion: print w/ replies, xml ) Need Help??
Jenda has asked for the wisdom of the Perl Monks concerning the following question:

I have a fairly complex web based UI that I'd like to rewrite in Perl. Do you have any recommendations regarding the JavaScript and Perl libraries to use?

I could not care less for kewl animations and stuff as it is the admin face of something, but the forms are pretty complicated with tables containing something like ten inputboxes, several pulldowns, checkboxes etc. in each row, some of them validated (preferably also on client) some opening popup windows allowing the admin to control more details, with the need to be able to add or remove rows, etc. etc. etc. Of course it would be great if I could filter or reorder the rows on the client etc.

I know I've read about some module that would let me build the UI similar to the way I would build a desktop UI and I remember that I liked both the idea and the results, but for the life of me I can't remember the name and a search on CPAN failed. Does it ring any bells? As I said, I do not mind the looks as long as it's easy on the screen estate, is reasonably easy to work with and handles the complicated stuff well.

Comment on Libraries for web based UI (complex one)
Re: Libraries for web based UI (complex one)
by Your Mother (Canon) on Nov 24, 2008 at 20:40 UTC

    Unless you're talking Tk or some other window manager interface, you can't do UI like that with Perl...? I'm sure you know this so maybe I don't understand the question.

    If you're looking for the most Desktop-like JS lib for web stuff, it's ExtJS. It was a fork from YUI originally, IIRC, and it's feature rich if a little on the large side. There are two examples of using it with Cat here: Getting started with ExtJS screen library and Catalyst with Ext+Ajax: Editable Data Grids.

    FWIW, there are a couple of really hot jQuery (my pet lib) plugins that do some of the same things (like live data tables and dojo-style comboboxes). Though jQuery plays nicely with ExtJS and other libs so you can mix and match.

    (update: downcased k in Tk; linked jQuery.)

      I know there must be some JavaScript involved, but at least some of that may be generated by its Perl counterpart. Which would be what I'd like best. I'll definitely have a look at ExtJS, I'd rather not mix&match until I feel comfortable with one of them :-) Thanks!

Re: Libraries for web based UI (complex one)
by renodino (Curate) on Nov 24, 2008 at 21:03 UTC
    Have you tried IWL ? Its a Perl wrapper around Prototype/Scriptaculous. The output isn't Dojo/Ext shiny w/ round corners and such, but it sounds like it might provide a decent solution for your needs (if I understand them).

    Perl Contrarian & SQL fanboy

      I think this is exactly what I had in mind! Thanks a lot! As I said, I don't need it shiny, animated, kewl or rounded as it's for the admins, so I'll very definitely give this a try as this looks exactly like what I was looking for. Which doesn't mean I will not have a look at ExtJS suggested by Your Mother, but I assume I'll end up using IWL :-)

        That module looks pretty nice from the Perl side of things. JS will count too though. This is anecdotal but prototype generally comes in last out of the major libraries most devs would choose to use. YUI, dojo, MooTools, MochiKit, jQuery, and ExtJS all have better reps and from what I understand, it's deserved. Modern versions of prototype fix some of the goofy decisions they made in the past (they used to prototype built-ins which can break any and all other JS in use and had other poor design choices like gobbling up global reserved words with common webdev terminology) but they still seem to only lose ground to the newer kits.

        There seems less stuff available but you should search around the CPAN a bit for other kits and see if there is something you can build on, e.g.: jQuery (jQuery is used/bundled in the lovely Devel::NYTProf) and ExtJs.

Re: Libraries for web based UI (complex one)
by dragonchild (Archbishop) on Dec 01, 2008 at 17:35 UTC
    You're looking for Reaction. Although still in alpha, mst's "alpha" is most people's production code. Jifty might also be useful to look at.

    My criteria for good software:
    1. Does it work?
    2. Can someone else come in, make a change, and be reasonably certain no bugs were introduced?

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: perlquestion [id://725681]
Approved by pKai
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others drinking their drinks and smoking their pipes about the Monastery: (3)
As of 2014-11-29 08:53 GMT
Find Nodes?
    Voting Booth?

    My preferred Perl binaries come from:

    Results (204 votes), past polls