Two open source products are announced in this email:
*PRUDENCE 1.1* I am happy to announce the final release of Prudence 1.1! (Identical to RC13.) Prudence is a Restlet-centric container and platform for developing web applications and services. It allows quick and easy configuration, deployment and development of RESTful resources, and features a very powerful caching system carefully integrated into the conditional HTTP process. Develop your app in Java, Python, Ruby, Groovy, Clojure, PHP or JavaScript. It's a more RESTful alternative to JEE (which it does not require nor use). Prudence 1.1 takes you to the clouds: instances automatically discover each other and form clusters (via Hazelcast) that can share global data and tasks. Easily farm out your work in the cluster for super-scalability and redundancy. Has been tested with 100 nodes on EC2! See our Restlet-centric page for more information: http://threecrickets.com/prudence/manual/restlet-container/ *THE SAVORY FRAMEWORK* Building on the Prudence 1.1 platform, Savory is the first comprehensive web development framework for MongoDB, featuring strong integration with the Ext JS and Sencha Touch client frameworks: http://threecrickets.com/savory/ Savory is still in "Early Bird" mode and needs some more fleshing out, testing and documentation, but the core features are all there and ready to rumble. *FEATURES* The Savory Framework offers especially scalable and robust solutions for common web application needs. A partial list includes: * authentication, with support for logging in from Facebook, Twitter, Windows Live and OpenID; * fine-grained user permissions; * new user registration, with captcha and email validation; * email notification on a truly massive scale; * per-user internationalization, with built-in consideration of right-to-left languages; * easy, fast text search with Lucene; * discussion forums, including threaded comments that can be attached to any documents; * wiki-like functionality with support for site-wide revisions, Tactile, Markdown and more; * blog functionality, including support for Linkback and Trackback; * sitemap generation, supporting millions of URLs; * JSON-RPC and XML-RPC, client and server; * RSS syndication; * shopping carts with PayPal integration; * HTML forms with server- and client-side validation; * Gravatar; * robust support for asynchronous processing ("please wait while searching for you flights..."); * and -- if you can believe it -- more... We're especially pleased with Savory's Ext JS integration: within minutes of dev work you can connect any MongoDB collection to a client-side editable grid, tree or chart. A clean Ext Direct implementation creates a seamless RPC from client to server. Add Sencha Touch, and you get the fastest MongoDB-backed mobile app development experience. Works on Android, iPhone, Blackberry. General-purpose backend services include asynchronous events that can be triggered anywhere in the cluster, a powerful data caching mechanism, and a "DRM" (not ORM!) Document-Resource-Mapping system that allows any MongoDB collection to be exposed as an editable RESTful resource in your URI-space. (This offers a customizable variation on MongoDB's REST API.) Bored or bedazzled with this announcement already? Just jump to the web site and check out all the cool, live demos. *THE DEVELOPMENT EXPERIENCE* Savory offers development agility comparable to that of Rails and Django. Quickly generate HTML based on your data or throw it into powerful Ext JS grids, trees and charts. It is, moreover, lighter than the old SQL solutions: MongoDB's no-nonsense storage does away with the need of a complex ORM layer. Instead, in Savory you work with your data directly in JavaScript, or process it through Savory's flexible iterator framework. Development tools include a powerful web-based console (almost an online IDE) and a beautiful source code documentation generator. MongoVision is a recommended sister project. In many ways Savory is a post-MVC, even post-object-oriented framework: the architecture is designed to avoid complex abstractions and layers that are nudged between your code, your data and your subsystems. We don't like wasting time debugging such layers or shoehorning them into our requirements. Nor do we like hacking around an object's encapsulation when it does not fit a simpler, more elegant solution. Never should we have to pay for what we don't want or need. If you've never used JavaScript on the server, you're in for a pleasant surprise. A Scheme-like language with a C-like syntax, its ability to throw closures everywhere allows for succinct clarity. The combination of JavaScript on the server, in MongoDB and in the client browser means that you never have to switch programming paradigms, and can even share code between environments. *A SOLID BASE* The scalable combination of Prudence and MongoDB can take your backend very, very far. And Savory makes it even tastier. "Our web development framework tastes better than yours." Yours, Tal Liron, Three Crickets LLC ------------------------------------------------------ http://restlet.tigris.org/ds/viewMessage.do?dsForumId=4447&dsMessageId=2781974

