Mojolicious::Guides(3)

NAME
Mojolicious::Guides - Mojolicious guide to the galaxy

DON'T PANIC!
We are constantly working on new documentation, follow us on GitHub <http://github.com/kraih/mojo> or join the official IRC channel "#mojo" on "irc.perl.org" to get all the latest updates.

BASICS

Learning Perl
    If you are new to Perl, we recommend Learn Perl in 2 hours 30 minutes <http://qntm.org/files/perl/perl.html> for a quick introduction, or the Modern Perl book <http://modernperlbooks.com/books/modern_perl/>, freely available in many formats. Both are excellent introductions to the language. For more books and documentation, check out learn.perl.org <http://learn.perl.org/>.

Learning Web Technologies
    All web development starts with HTML, CSS and JavaScript, to learn the basics we recommend the Mozilla Developer Network <https://developer.mozilla.org/en-US/docs/Web>. And if you want to know more about how browsers and web servers actually communicate, there's also a very nice introduction to HTTP <https://developer.mozilla.org/en-US/docs/Web/HTTP>.

TUTORIAL

Mojolicious::Guides::Tutorial
    A fast and fun way to get started developing web applications with Mojolicious. The tutorial introduces the Mojolicious::Lite micro web framework, which is only a thin wrapper around the full web framework. The simplified notation introduced in the tutorial is commonly used throughout the guides and is therefore considered a prerequisite, you should definitely take a look!

GUIDES

Mojolicious::Guides::Growing
    Starting a Mojolicious::Lite prototype from scratch and growing it into a well-structured Mojolicious application.

Mojolicious::Guides::Routing
    Simple and fun introduction to the Mojolicious router.

Mojolicious::Guides::Rendering
    Generating content with the Mojolicious renderer.

Mojolicious::Guides::Cookbook
    Cooking with Mojolicious, recipes for every taste.

Mojolicious::Guides::Contributing
    Become a part of the ongoing Mojolicious development.

Mojolicious::Guides::FAQ
    Answers to the most frequently asked questions.

HIGHLIGHTS
Mojolicious and Mojolicious::Lite are the sum of many parts, small building blocks that can be used independently, these are the most prominent ones.

Mojo::UserAgent
    Full featured non-blocking I/O HTTP and WebSocket user agent.

Mojo::DOM
    Very fun and minimalistic HTML/XML DOM parser with CSS selector support.

Mojo::JSON
    Minimalistic JSON implementation that just works.

Mojo::Server::Daemon
    Full featured, highly portable non-blocking I/O HTTP and WebSocket server, with self-restart support through Mojo::Server::Morbo, perfect for development and testing.

Mojo::Server::Prefork
    Full featured, UNIX optimized, preforking non-blocking I/O HTTP and WebSocket server with support for zero downtime software upgrades (hot deployment) through Mojo::Server::Hypnotoad.

Mojo::Server::CGI, Mojo::Server::PSGI
    Transparent CGI and PSGI support out of the box.

Mojo::IOLoop
    A minimalistic event loop with support for multiple reactor backends.

Mojo::Template
    Very Perl-ish and minimalistic template system.

Test::Mojo
    Testing toolkit for web applications.

ojo Fun one-liners using everything above.

SPIN-OFFS
These modules are not part of the Mojolicious distribution, but have been designed to be used with it and are being developed under the same umbrella.

Mojo::Pg
    A tiny wrapper around DBD::Pg that makes PostgreSQL <http://www.postgresql.org> a lot of fun to use with Mojolicious.

Minion
    A job queue for Mojolicious with support for multiple backends.

REFERENCE
This is the class hierarchy of the Mojolicious distribution.

•   Mojo::Base

    •   Mojo

        •   Mojolicious

            •   Mojolicious::Lite

                •   Mojo::HelloWorld

    •   Mojo::Cache

    •   Mojo::Cookie

        •   Mojo::Cookie::Request

        •   Mojo::Cookie::Response

    •   Mojo::DOM::CSS

    •   Mojo::DOM::HTML

    •   Mojo::Date

    •   Mojo::EventEmitter

        •   Mojo::Asset

            •   Mojo::Asset::File

            •   Mojo::Asset::Memory

        •   Mojo::Content

            •   Mojo::Content::MultiPart

            •   Mojo::Content::Single

        •   Mojo::IOLoop

        •   Mojo::IOLoop::Client

        •   Mojo::IOLoop::Delay

        •   Mojo::IOLoop::Server

        •   Mojo::IOLoop::Stream

        •   Mojo::Log

        •   Mojo::Message

            •   Mojo::Message::Request

            •   Mojo::Message::Response

        •   Mojo::Reactor

            •   Mojo::Reactor::Poll

                •   Mojo::Reactor::EV

        •   Mojo::Server

            •   Mojo::Server::CGI

            •   Mojo::Server::Daemon

                •   Mojo::Server::Prefork

            •   Mojo::Server::PSGI

        •   Mojo::Transaction

            •   Mojo::Transaction::HTTP

            •   Mojo::Transaction::WebSocket

        •   Mojo::UserAgent

        •   Mojolicious::Plugins

    •   Mojo::Exception

    •   Mojo::Headers

    •   Mojo::Home

    •   Mojo::JSON::Pointer

    •   Mojo::Parameters

    •   Mojo::Path

    •   Mojo::Server::Hypnotoad

    •   Mojo::Server::Morbo

    •   Mojo::Template

    •   Mojo::URL

    •   Mojo::Upload

    •   Mojo::UserAgent::CookieJar

    •   Mojo::UserAgent::Proxy

    •   Mojo::UserAgent::Server

    •   Mojo::UserAgent::Transactor

    •   Mojolicious::Command

        •   Mojolicious::Command::cgi

        •   Mojolicious::Command::cpanify

        •   Mojolicious::Command::daemon

        •   Mojolicious::Command::eval

        •   Mojolicious::Command::generate::app

        •   Mojolicious::Command::generate::lite_app

        •   Mojolicious::Command::generate::makefile

        •   Mojolicious::Command::generate::plugin

        •   Mojolicious::Command::get

        •   Mojolicious::Command::inflate

        •   Mojolicious::Command::prefork

        •   Mojolicious::Command::psgi

        •   Mojolicious::Command::routes

        •   Mojolicious::Command::test

        •   Mojolicious::Command::version

        •   Mojolicious::Commands

            •   Mojolicious::Command::generate

    •   Mojolicious::Controller

    •   Mojolicious::Plugin

        •   Mojolicious::Plugin::Charset

        •   Mojolicious::Plugin::Config

            •   Mojolicious::Plugin::JSONConfig

        •   Mojolicious::Plugin::DefaultHelpers

        •   Mojolicious::Plugin::EPLRenderer

        •   Mojolicious::Plugin::EPRenderer

        •   Mojolicious::Plugin::HeaderCondition

        •   Mojolicious::Plugin::Mount

        •   Mojolicious::Plugin::PODRenderer

        •   Mojolicious::Plugin::TagHelpers

    •   Mojolicious::Renderer

    •   Mojolicious::Routes::Match

    •   Mojolicious::Routes::Pattern

    •   Mojolicious::Routes::Route

        •   Mojolicious::Routes

    •   Mojolicious::Sessions

    •   Mojolicious::Static

    •   Mojolicious::Types

    •   Mojolicious::Validator

    •   Mojolicious::Validator::Validation

    •   Test::Mojo

•   Mojo::ByteStream

•   Mojo::Collection

•   Mojo::DOM

•   Mojo::JSON

•   Mojo::Loader

•   Mojo::Util

•   ojo

MORE
A lot more documentation and examples by many different authors can be found in the Mojolicious wiki <http://github.com/kraih/mojo/wiki>.

SUPPORT
If you have any questions the documentation might not yet answer, don't hesitate to ask on the mailing-list <http://groups.google.com/group/mojolicious> or the official IRC channel "#mojo" on "irc.perl.org".