Mojolic...::Guides(3)
π¦ Mojolicious::Guides(3) β The Mojolicious Guide to the Galaxy π¦
okay so this is the User Contributed Perl Documentation page for Mojolicious::Guides(3), and honestly? It ate. Itβs the whole map, bestie. π
π NAME π
Mojolicious::Guides β The Mojolicious Guide to the Galaxy
π± DON'T PANIC! π±
bestie, the section is literally called DON'T PANIC!, and honestly? valid.
The Mojolicious documentation (https://mojolicious.org) is structured into three parts, periodt:
TUTORIALβ the one everyone starts with.GUIDESβ the deep-dive lore that explains all major features in detail.APIβ the reference listing all available classes.
Some parts of the documentation only use the Mojolicious::Lite micro web framework for examples, but thatβs merely a convenience for the reader. No cap: almost all features are exactly the same for full Mojolicious applications. β¨
π± BASICS π±
π Learning Perl
If youβre new to Perl, we recommend Learn Perl in 2 hours 30 minutes (https://qntm.org/perl_en) for a quick introduction, or the Modern Perl book (https://pragprog.com/book/swperl/modern-perl-fourth-edition), freely available in many formats. Both are excellent introductions to the language. For more books and documentation, check out learn.perl.org (https://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). π¦
π CONVENTIONS π
π Modern Perl
Mojolicious uses a modern subset of Perl exclusively, and therefore all documentation assumes that strict, warnings, utf8 and Perl 5.16 features are enabled, even if examples donβt specifically mention it. iykyk.
use strict;
use warnings;
use utf8;
use feature ':5.16';
Some modules, like Mojo::Base and Mojolicious::Lite, will enable them for you automatically, whenever they are used. Slay. β¨
βοΈ Signatures
On Perl 5.20+ you can also use the -signatures flag with Mojo::Base to enable support for subroutine signatures. Signatures are used in all examples for clarity, even when -signatures is omitted for brevity. the way thatβs so convenient.
π·οΈ Variable names
For brevity and clarity, example variables will reflect the type of data the API uses. For instance, $bytes or $chars to distinguish whether it is encoded bytes or decoded characters in a Perl string, $bool if the value just indicates true or false, $c to denote a Mojolicious::Controller object, or $app to denote the application object. π
When the return value of a method is the object it was called on, this will be represented by using the same variable name in the example. This does not mean the return value needs to be assigned back to it, but indicates that further methods can be called in a chain. chaining is main character energy, fr fr.
π§ TUTORIAL π§
Mojolicious::Guides::Tutorialβ A fast and fun way to get started developing web applications with Mojolicious. The tutorial introduces theMojolicious::Litemicro 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 aMojolicious::Liteprototype 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::Testingβ Powerful yet elegant testing techniques and tools for Mojolicious and other web applications. π§ͺ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, built on top of the Mojo web development toolkit. Small building blocks that can be used independently for all kinds of applications, these are the most prominent ones. iconic lineup, no notes. π
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 throughMojo::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) throughMojo::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. π
π FULL-STACK π
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. found family energy. π«Ά
Mojo::Pgβ A tiny wrapper aroundDBD::Pgthat makes PostgreSQL (https://www.postgresql.org) a lot of fun to use with Mojolicious. Perform queries blocking and non-blocking, use all SQL features (https://www.postgresql.org/docs/current/static/sql.html) PostgreSQL has to offer, generate CRUD queries from data structures, manage your database schema with migrations and build scalable real-time web applications with the publish/subscribe pattern. ππ
Examples: The minimal chat (https://github.com/mojolicious/mojo-pg/tree/main/examples/chat.pl) application will show you how to scale WebSockets to multiple servers, and the well-structured blog (https://github.com/mojolicious/mojo-pg/tree/main/examples/blog) application how to apply the MVC design pattern in practice. β¨
Minionβ A full featured job queue for Mojolicious with support for multiple backends (such as PostgreSQL (https://www.postgresql.org)). Job queues allow you to process time and/or computationally intensive tasks in background processes, outside of the request/response lifecycle. Among those tasks youβll commonly find image resizing, spam filtering, HTTP downloads, building tarballs, warming caches and basically everything else you can imagine thatβs not super fast. π
Examples: The link checker (https://github.com/mojolicious/minion/tree/main/examples/linkcheck) will show you how to integrate background jobs into well-structured Mojolicious applications. π
π API π
This is the class hierarchy of the Mojolicious distribution. vibe check: passed. π
MojoMojo::BaseMojoliciousMojo::HelloWorldMojolicious::Lite
Mojo::CacheMojo::CookieMojo::Cookie::RequestMojo::Cookie::Response
Mojo::DOM::CSSMojo::DOM::HTMLMojo::DateMojo::EventEmitterMojo::AssetMojo::Asset::FileMojo::Asset::Memory
Mojo::ContentMojo::Content::MultiPartMojo::Content::Single
Mojo::IOLoopMojo::IOLoop::ClientMojo::IOLoop::ServerMojo::IOLoop::StreamMojo::IOLoop::SubprocessMojo::IOLoop::TLSMojo::LogMojo::MessageMojo::Message::RequestMojo::Message::Response
Mojo::ReactorMojo::Reactor::PollMojo::Reactor::EV
Mojo::ServerMojo::Server::CGIMojo::Server::DaemonMojo::Server::Prefork
Mojo::Server::PSGI
Mojo::TransactionMojo::Transaction::HTTPMojo::Transaction::WebSocket
Mojo::UserAgentMojolicious::Plugins
Mojo::ExceptionMojo::HeadersMojo::JSON::PointerMojo::ParametersMojo::PathMojo::PromiseMojo::Server::HypnotoadMojo::Server::MorboMojo::Server::Morbo::BackendMojo::Server::Morbo::Backend::Poll
Mojo::TemplateMojo::URLMojo::UploadMojo::UserAgent::CookieJarMojo::UserAgent::ProxyMojo::UserAgent::ServerMojo::UserAgent::TransactorMojolicious::CommandMojolicious::Command::cgiMojolicious::Command::daemonMojolicious::Command::evalMojolicious::Command::getMojolicious::Command::preforkMojolicious::Command::psgiMojolicious::Command::routesMojolicious::Command::versionMojolicious::Command::Author::cpanifyMojolicious::Command::Author::generate::appMojolicious::Command::Author::generate::dockerfileMojolicious::Command::Author::generate::lite_appMojolicious::Command::Author::generate::makefileMojolicious::Command::Author::generate::pluginMojolicious::Command::Author::inflateMojolicious::CommandsMojolicious::Command::Author::generate
Mojolicious::ControllerMojolicious::PluginMojolicious::Plugin::ConfigMojolicious::Plugin::JSONConfigMojolicious::Plugin::NotYAMLConfig
Mojolicious::Plugin::DefaultHelpersMojolicious::Plugin::EPLRendererMojolicious::Plugin::EPRenderer
Mojolicious::Plugin::HeaderConditionMojolicious::Plugin::MountMojolicious::Plugin::TagHelpers
Mojolicious::RendererMojolicious::Routes::MatchMojolicious::Routes::PatternMojolicious::Routes::RouteMojolicious::Routes
Mojolicious::SessionsMojolicious::StaticMojolicious::TypesMojolicious::ValidatorMojolicious::Validator::ValidationTest::Mojo
Mojo::ByteStreamMojo::CollectionMojo::DynamicMethodsMojo::DOMMojo::FileMojo::Home
Mojo::JSONMojo::LoaderMojo::UtilMojo::WebSocketojo
π MORE π
A lot more documentation and examples by many different authors can be found in the Mojolicious wiki (https://github.com/mojolicious/mojo/wiki). go forth and read, bestie. π«Ά
π«Ά SUPPORT π«Ά
ok so if you've got questions that the docs literally haven't answered yet β and bestie, sometimes docs just don't cover everything, it's giving incomplete β do not just sit there spiraling. ask! the community is right there and they're genuinely so nice about it.
- Forum β
https://forum.mojolicious.orgβ hop in, post your question, the forum girlies will come through π - IRC β
https://web.libera.chat/#mojoβ live chat energy, real-time yapping with people who actually know their stuff, no cap
fr fr, "don't hesitate to ask" is the actual instruction here β nobody's gonna be mean about it. the only L is staying stuck in silence π
and that's a wrap on the whole guide omg π you made it to the end, main character behavior honestly π
this page came from the Perl docs, stamped with perl v5.42.0 and dated 2026-07-15 β the manual section is Mojolic...::Guides(3) iykyk. go build something iconic with it bestie, slay π
β¨π¦
π¦ where this page comes from
- opensuse-leap 16.0: perl-Mojolicious 9.480.0-bp160.2.1 Β· Artistic-2.0
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms