Mojolicious

{{Infobox software

| name =

| logo = Mojolicious logo.png

| screenshot =

| caption =

| collapsible =

| author = Sebastian Riedel

| developer =

| released = {{Start date and age|2008|09|24}}{{cite web|url=https://metacpan.org/changes/distribution/Mojolicious|title=Mojolicious change log}}

| latest release version = {{Mojolicious version}}

| latest release date = {{Mojolicious version|releasedate}}

| latest preview version =

| latest preview date =

| repo = {{URL|https://github.com/mojolicious/mojo|Mojolicious Repository}}

| programming language = Perl

| operating system =

| platform =

| size =

| language =

| genre = Web application framework

| license = PAL

| website = {{URL|http://mojolicious.org/}}

}}

Mojolicious is a real-time web application framework, written by Sebastian Riedel, creator of the web application framework Catalyst.{{cite web|url=http://developers.slashdot.org/story/11/10/18/0110229/mojolicious-20-modern-perl-for-the-web|title=Mojolicious 2.0: Modern Perl For the Web|publisher=Slashdot|date=17 Oct 2011}} Licensed as free software under the Artistic License v 2.0, it is written in the Perl programming language, and is designed for use in both simple and complex web applications, based on Riedel's previous experience developing Catalyst.{{cite web|url=http://www.activestate.com/blog/2011/02/mojolicious-interview-sebastian-riedel|title=Mojolicious - An Interview with Sebastian Riedel|author=Tara Gibbs|publisher=ActiveState|date=17 February 2011}} Documentation for the framework was partly funded by a grant from The Perl Foundation.{{cite web|url=http://news.perlfoundation.org/2010/12/mojolicious-documentation-clos.html|title=Mojolicious Documentation Closing Grant Report|author=Alberto Simões|publisher=The Perl Foundation|date=16 Dec 2010}}

As it is written in Perl, Mojolicious can run on any of the many operating systems for which Perl is available, and can be installed directly from CPAN.{{cite web|url=https://metacpan.org/release/Mojolicious|title=Mojolicious|publisher=CPAN}} Prebuilt packages of Mojolicious are also available for NetBSD from pkgsrc{{cite web|url=http://ftp.netbsd.org/pub/pkgsrc/current/pkgsrc/www/p5-Mojolicious/README.html|title=The NetBSD Packages Collection: www/p5-Mojolicious|publisher=pkgsrc}} and for Microsoft Windows and other operating systems from ActiveState's Perl package manager.{{cite web|url=http://code.activestate.com/ppm/Mojolicious/|title=Mojolicious|publisher=Perl package manager}}

Features

  • Real-time web framework supporting a simplified single file mode through Mojolicious::Lite.{{cite web|url=http://mojolicious.org/|title=Mojolicious - Perl real-time web framework|publisher=Mojolicious}}
  • Out-of-the-box support for RESTful routes, plugins, Perl-ish templates, session management, signed cookies, testing framework, static file server and full Unicode support.
  • Portable and object oriented Perl API with no requirements besides Perl 5.10.1 (although 5.18+ is recommended, and optional CPAN modules will be used to provide advanced functionality if they are installed).
  • Full stack HTTP and WebSocket.{{cite web|url=http://webdev.infowebcentral.com/redirect/85036|archive-url=https://web.archive.org/web/20171008232008/http://webdev.infowebcentral.com/redirect/85036|url-status=dead|archive-date=8 October 2017|title=Updating the Duct Tape for HTML5: Websockets in Perl (Mojolicious)|publisher=DZone|date=1 Nov 2011}}{{cite book |last= McDaniel|first= Adam |title= HTML5: Your Visual Blueprint for Designing Rich Web Pages and Applications |publisher= Visual|date=November 2011|isbn= 978-0-470-95222-1|url=https://books.google.com/books?id=pfLdvQIM7bIC&q=Mojolicious&pg=PT534}} Client/server implementation with IPv6, TLS, IDNA, Comet (long polling), chunking and multipart support.
  • Built-in non-blocking I/O web server supporting libevent and hot deployment for embedding.{{cite news|url=http://dl.acm.org/citation.cfm?id=2015981|title=Watch your processes remotely with Mojolicious and a smartphone|author=Jamie Popkin|publisher=Linux Journal|volume= 2011 |issue =207|date=July 2011}}
  • Automatic CGI and PSGI detection.
  • JSON and HTML5/XML parser with CSS3 selector support.{{cite web|url=http://conferences.yapceurope.org/lpw2010/talk/3076|title=Mojolicious|author=Marcus Ramberg|publisher=Yet Another Perl Conference|date=4 Dec 2010}}

References

{{reflist}}