Ado

 view release on metacpan or  search on metacpan

Changes  view on Meta::CPAN

  - Implemented more safe $c->user and user helper
    in which some fields are not available.
  - Improved Ado::Control::require_formats(@formats).
  - Improved Ado::Model::Users::by_group_name($group, $limit, $offset).
  - TODO: Improve Test Coverage.


0.69 2014-10-26
  - $CODENAME changed to
    "Живете" - U+2C06 GLAGOLITIC CAPITAL LETTER ZHIVETE (Ⰶ)
  - Switched from favicon.ico to favicon.png for better quality.
  - Fixed popup positioning and appearance of the logo in the main menu.
  - Added the condition 'ingroup' to Ado::Plugin::Auth.
  - Implemented Ado::Model::Users::by_group_name($group, $limit, $offset).

0.68 2014-10-25
  - Upgraded to Mojolicious 5.54.
  - Added templates/not_found.html.ep.
  - Upgraded to DBD::SQLite 1.44.
  - Dramatic performance improvement with 'PRAGMA synchronous = OFF' and
    'PRAGMA journal_mode=WAL'.

MANIFEST  view on Meta::CPAN

LICENSE
log/development.log
log/production.log
log/README
MANIFEST			This list of files
META.json
META.yml
public/articles/ala/bala.md
public/articles/hello.md
public/css/ado.css
public/css/flags/bg.png
public/css/flags/de.png
public/css/flags/en.png
public/css/flags/es.png
public/css/flags/fr.png
public/css/flags/readme.txt
public/css/flags/ru.png
public/css/ui-bg_diagonal-maze_light_10x10.png
public/doc/bg/accounting.md
public/doc/bg/admin.md
public/doc/bg/apps.md
public/doc/bg/articles.md
public/doc/bg/blog.md
public/doc/bg/cms.md
public/doc/bg/cover.md
public/doc/bg/crm.md
public/doc/bg/domains.md
public/doc/bg/groups.md
public/doc/bg/img/default_admin_screen.epz
public/doc/bg/img/default_admin_screen.png
public/doc/bg/intro.md
public/doc/bg/messages.md
public/doc/bg/no_title.md
public/doc/bg/pages.md
public/doc/bg/products.md
public/doc/bg/projects.md
public/doc/bg/purchases.md
public/doc/bg/sales.md
public/doc/bg/settings.md
public/doc/bg/shops.md
public/doc/bg/site_apps.md
public/doc/bg/store.md
public/doc/bg/toc.md
public/doc/bg/users.md
public/doc/en/cover.md
public/doc/en/intro.md
public/doc/en/no_title.md
public/doc/en/toc.md
public/favicon.png
public/fonts/FreeSerif-Glagolitic-UC.woff
public/fonts/README
public/img/5FE59-ado.jpg
public/img/Ado-Building-Blocks.png
public/img/Ado-Building-Blocks.svg
public/index.html
public/js/auth.js
public/js/help_toc.js
public/js/jquery.cookie.js
public/vendor/crypto-js/rollups/sha1.js
public/vendor/pagedown/LICENSE.txt
public/vendor/pagedown/Markdown.Converter.js
public/vendor/pagedown/Markdown.Editor.js
public/vendor/pagedown/Markdown.Sanitizer.js
public/vendor/pagedown/node-pagedown.js
public/vendor/pagedown/package.json
public/vendor/pagedown/README.txt
public/vendor/pagedown/wmd-buttons.png
README
README.md
t/.perlcriticrc
t/00-load.t
t/ado-build.t
t/ado/etc/bare.conf
t/ado/etc/empty.conf
t/ado/etc/plugins/bar.alabala.dummy
t/ado/etc/plugins/example.conf
t/ado/etc/plugins/example.development.conf

lib/Ado/Manual/Intro.pod  view on Meta::CPAN

      │                     # modify if you want to override some of the system templates
      ├── default
      ├── doc
      ├── layouts
      ├── partials
      └── test


And here is how Ado looks as building blocks:

=for HTML <img src="https://raw.githubusercontent.com/kberov/Ado/master/public/img/Ado-Building-Blocks.png" />

To learn more about Ado plugins, please look at L<Ado::Manual::Plugins>.
Now that you know what additional features Ado provides, you can proceed to
L<Ado::Manual::Installation>.


=head1 SEE ALSO

L<Ado::Manual>, L<Ado::Manual::Installation>, L<Ado::Manual::Plugins>, L<Mojolicious::Guides>

lib/Ado/Manual/Plugins.pod  view on Meta::CPAN


=head1 DESCRIPTION

C<@Ado::ISA=qw(Mojolicious)>. It is distributed together with a few plugins to
make it usable as a basic Mojolicious application. Theoretically all of the
plugins, distributed with L<Ado> could be disabled so you can start your project
only as a bare (I<but full>) L<Mojolicious> application, if you wish.  Later you
can decide to enable some of them and eventually add (your own) L<Mojolicious>
or L<Ado> plugins. Here is how it looks.

=for HTML <img src="https://raw.githubusercontent.com/kberov/Ado/master/public/img/Ado-Building-Blocks.png" />

=head1 PLUGINS

Ado comes with the following default plugins. They can be used as examples and
for inspiration.

=over

=item * L<Ado::Plugin::AdoHelpers> - Default Ado helpers

public/css/ado.css  view on Meta::CPAN

@font-face
{
  font-family: FreeSerif;
  src: url(../fonts/FreeSerif-Glagolitic-UC.woff);
}
body, body.ui.pushable{
  font-family: 'Ubuntu', sans-serif;
  margin: 0;
  color: #46400D;
  background-color: #fff;
  background-image: url(ui-bg_diagonal-maze_light_10x10.png);
}
h1,h2,h3,h4 {
  margin-bottom: 0.5em;
  margin-top: 1em;
}
h1 {
  margin-left: 1em;
}
h2 {
  margin-left: 2em;

public/doc/bg/intro.md  view on Meta::CPAN

1. Адо добавя следните нови команди:
  1. Ado::Command::adduser позволява добавяне на потребители към приложението през терминал. Също така командата позволява добавяне на съществуващ...
  2. Ado::Command::version  показва информация за версиите на инсталираните задължителни и незадължителни модули.
1. Не на последно място, кодът е добре покрит от тестове. Положени са специални грижи
 да не се натрупва технически дълг, като тестовете с Test::Perl::Critic са настроени 
 на ниво "сурово". По този начин изискваме стилът на писане на код да е
  последователен и еднообразен навсякъде, и да се избегнат лошите практики.

Ето как изглежда една система, базирана на Адо като архитектура:

![Съставни части на Адо](/img/Ado-Building-Blocks.png "Съставни части на Адо")

##Инсталация/Разполагане
Начинът на инсталиране, който ви дава най-голяма гъвкавост, е на командния ред.
Силно се препоръчва да ползвате отделна дистрибуция на Perl предназначена специално за целта - не тази, която идва с операционната ви систÐ...
ActivePerl или perlbrew са добър избор.

Всички сценарии описани на адрес [Mojolicious/Guides/Cookbook#DEPLOYMENT](http://mojolicio.us/perldoc/Mojolicious/Guides/Cookbook#DEPLOYMENT)
са валидни за Адо, като може да направите и ваша собствена комбинация.

##REST API[^restbg]

public/doc/en/intro.md  view on Meta::CPAN

3. The following libraries for user-interface development are used:
  1. Semantic UI – a CSS and JS framework for development of mobile-ready layouts. Its usage also results in more clean HTML than other popular frameworks.
  2. PageDown is the version of Attacklab's Showdown and WMD as used on Stack Overflow and the other Stack Exchange sites. It includes a converter that turns Markdown into HTML, a Markdown editor with realtime preview of the generated HTML, and a few...
4. The following Ado specific commands are available:
  1. Ado::Command::adduser allows adding users to an Ado application via a terminal. It also allows adding users to existing or not existing groups. The new group is automatically created.
  2. Ado::Command::version shows version information for installed core and optional modules.
1. Last but not least, Ado code is well covered with tests. Special care is taken to avoid accumulating technical debt by having Test::Perl::Critic tests set to level “harsh”. This way the coding style is forced to be consistent across the framew...

Here is how an Ado system looks like from architectural point of view:

![Ado building blocks](/img/Ado-Building-Blocks.png "Ado building blocks")

##Installation/Deployment
The most flexible way to install Ado is manually on the command line.
It is highly recommended to have a separate Perl distribution (not the one that comes with your OS).
ActivePerl or perlbrew are both fine. 

All deployment scenarios described at [Mojolicious/Guides/Cookbook#DEPLOYMENT](http://mojolicio.us/perldoc/Mojolicious/Guides/Cookbook#DEPLOYMENT)
are possible and specific custom deployments can be done.

Ado is not actively tested under Windows, but there is an [Ado PPM package](http://code.activestate.com/ppm/Ado/) for Mac OSX, Linux and Windows maintained by Active State.

public/img/Ado-Building-Blocks.svg  view on Meta::CPAN

   xmlns:svg="http://www.w3.org/2000/svg"
   xmlns="http://www.w3.org/2000/svg"
   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
   width="800"
   height="600"
   id="svg3774"
   version="1.1"
   inkscape:version="0.48.4 r9939"
   sodipodi:docname="Ado-Building-Blocks.svg"
   inkscape:export-filename="/home/berov/opt/public_dev/Ado/public/img/Ado-Building-Blocks.png"
   inkscape:export-xdpi="90"
   inkscape:export-ydpi="90">
  <defs
     id="defs3776" />
  <sodipodi:namedview
     id="base"
     pagecolor="#ffffff"
     bordercolor="#666666"
     borderopacity="1.0"
     inkscape:pageopacity="0.0"

templates/partials/apache2htaccess.ep  view on Meta::CPAN

    ExpiresActive Off
  </FilesMatch>
  <FilesMatch "\.(appcache)$">
    #Expire manifest files immediately.
    ExpiresDefault "access plus 0 seconds"
  </FilesMatch>
</IfModule>

# Additional headers for static files caching.
#<IfModule mod_headers.c>
#  <FilesMatch "\.(txt|js|css|htc|png|gif|jpe?g|ico|xml|csv|txt|swf|flv|mp4|webm|ogv|mp3|ogg|oga|eot|woff|svg|svgz|ttf|pdf|gz)$">
#    Header set Cache-Control s-maxage=2592000 "expr=%{REQUEST_STATUS} == 200"
#  </FilesMatch>
#</IfModule>
# Since we're sending far-future expires, we don't need ETags for
# static content.
# developer.yahoo.com/performance/rules.html#etags
FileETag None

% if( grep {$_ eq 'cgi'} @{$args->{modules}} ){
<IfModule mod_cgi.c>

templates/partials/head.html.ep  view on Meta::CPAN

% state $keywords = $self->{stash}{keywords} || $self->keywords;
% state $base_url = url_for('/')->base;
    <meta charset="utf-8" />
    <base href="<%= $base_url %>" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <meta name="generator" content="<%= $self->generator %>" />
    <meta name="description" content="<%= $description %>" />
    <meta name="keywords" content="<%= $keywords %>" />
    <title><%= title %></title>
    <link rel="icon" href="<%=$base_url%>/favicon.png" type="image/png" />
    %== head_css
    <link href="css/ado.css" rel='stylesheet' type='text/css' />
    <link href='//fonts.googleapis.com/css?family=Ubuntu&amp;subset=latin,cyrillic' rel='stylesheet' type='text/css' />
    %== head_javascript



( run in 0.768 second using v1.01-cache-2.11-cpan-df04353d9ac )