NAME Ado::Manual - Getting started with Ado DESCRIPTION Ado is a lightweight and reliable base for developing realtime web applications with database backend for the enterprise. Ado is based on Mojolicious and implements many of the recommendations from Mojolicious::Guides. When in doubt it is recommended to follow these recommendations. Ado is a tipical Mojo application but it adds some default configuration and a model layer. An SQLite database is bundled in the distribution at "etc/ado.sqlite" to get started quickly. Tables can be accessed and manipulated using DBI, DBIx::Simple or any ORM. We prefer DBIx::Simple::Class trough Mojolicious::Plugin::DSC. DBIx::Simple::Class is a simple OM that provides representation of table records as plain Perl objects. INSTALLATION Ado is meant to be installed into a folder of your choice. It can go into the "site" folder of your *non-system Perl distro* but better install it in its own folder. We do not recommend using Ado with your system Perl! Get a precompiled Perl distro like "Citrus Perl" () or "ActivePerl Community Edition" () for your OS, or build your own using App::perlbrew. Ado can be downloaded from CPAN or installed via the "cpan" commandline tool. To install manually Ado after downloading, run the following commands: tar -zxf Ado-X.XX.tar.gz cd Ado-X.XX/ perl Build.PL --install_base $HOME/path/to/ado #if run without --install_base $HOME/opt/ado will be suggested ./Build ./Build installdeps ./Build test ./Build install SUPPORT AND DOCUMENTATION After installing, you can find documentation with the perldoc command. perldoc Ado perldoc Ado::Manual #this page To use c for reading documentation you need to add the full path to Ado "lib/" directory to "PERL5LIB" environment variable. For better experience run the "ado" application and read the documentation from your browser. $HOME/opt/ado/bin/ado daemon Go to http:/localhost:3000/perldoc You can report bugs and suggest features at . Bugs will be considered and fixed as time permits. Feel invited to make pull requests for your contributions. CONTRIBUTING Generally the rules outlined in Mojolicious::Guides::Contributing apply for Ado too. For specific to Ado rules see Ado::Manual::Contributing. REST API Ado strives for strict separation of concerns. The best way to achieve this is to fully separate the client code from the server code. Ado is ideally suited for the purpose thanks to Mojolicious. Every resource is accessible via the REST API. We follow closely and elaborate on the recommendations in "RESTful Service Best Practices" at www.RestApiTutorial.com. See Ado::Manual::RESTAPI. PLUGINS One way to contribute to Ado is by writing plugins. They work the same way as Mojolicious::Plugins and share the same common base trough Ado::Plugin. Ado plugins have one small additional feature. They can store separately their own configuration in "$ENV{MOJO_HOME}/etc/plugins/plugin_name.conf". Business-specific applications for an Ado-based system are usually implemented as plugins. See Ado::Manual::Plugins and Ado::Plugin for more information. SEE ALSO Ado, Mojolicious::Guides, Mojolicious::Guides::Contributing, "prefix_vs_install_base" in Module::Build::Cookbook, . AUTHOR Красимир Беров (Krasimir Berov) COPYRIGHT AND LICENSE Copyright 2013 Красимир Беров (Krasimir Berov). This program is free software, you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License v3 (LGPL-3.0). You may copy, distribute and modify the software provided that modifications are open source. However, software that includes the license may release under a different license. See http://opensource.org/licenses/lgpl-3.0.html for more information.