Name YOTE Summary Yote is a platform for creating web based applications by bridging client side javascript with server side, automatically persistent perl objects. Yote provides javascript objects with methods that map to their server side counterparts. See http://fenowyn.com/yote for more information. Note As of this writing Yote is on version 0.072. It is not yet stable and is in pre-alpha mode. Consider this alpha software once version 0.100 is reached. Please email coyocanid@gmail.com to report bugs or issues or feature requests. Requirements * perl version 5.10 * A webserver that can run perl cgi files * jquery (provided with this distribution, or from http://docs.jquery.com/Downloading_jQuery) * Some sort of server-side storage (MySQL or a writable file) Install Yote $ perl Build.PL $ ./Build $ ./Build test $ ./Build install Changing Ports If you want to change the port once yote has been installed, Verify by running html test $ yote_server open http:///yote/unit_tests.html Using Yote Start the Web App Server Starting the Web App Server from the command line: $ yote_server This starts the server on the default port (8008), using SQLiteIO, and writing to file ~/.yote/SQLite.yote.db. Starting the Web App Server from a package: use Yote::WebAppServer; my $server = new Yote::WebAppServer(); $server->start_server( port => 8008, datastore => 'Yote::SQLiteIO', sqlitefile => 'yote.database' ); Coding with Yote Client Side Server Side package Yote::Hello; use strict; use Yote::Obj; use base 'Yote::AppRoot'; sub init { my $self = shift; my $counter = $self->get_counter( new Yote::Obj() ); } sub hello { my( $self, $data, $acct ) = @_; my $name = $data->{name}; my $counter = $self->get_counter(); $counter->set_count( $counter->get_count() + 1 ); return "hello there '$name'. I have said hello ". $counter->get_count() . " times."; } 1;