package Yancy; our $VERSION = '1.081'; # ABSTRACT: The Best Web Framework Deserves the Best CMS # "Mr. Fry: Son, your name is Yancy, just like me and my grandfather and # so on. All the way back to minuteman Yancy Fry, who blasted commies in # the American Revolution." #pod =encoding utf8 #pod #pod =head1 DESCRIPTION #pod #pod Yancy is a simple content management system (CMS) for the L web framework. #pod #pod =begin html #pod #pod
#pod
#pod Screenshot of list of Futurama characters #pod
#pod
#pod Screenshot of editing form for a person #pod
#pod
#pod #pod =end html #pod #pod Get started with L! #pod #pod This file documents the application base class. You can use this class directly #pod via the C command, or you can extend this class to build your own app. #pod #pod =head1 Starting Your Own Yancy Application #pod #pod If you have an existing L application you want to add Yancy #pod to, see L. #pod #pod The base Yancy class exists to provide a way to rapidly prototype a data-driven #pod web application. Apps that inherit from Yancy get these features out-of-the-box: #pod #pod =over #pod #pod =item * The Yancy CMS (L) #pod #pod =item * Database editor (L) #pod #pod =item * User logins (L) #pod #pod =item * Role-based access controls (L) #pod #pod =back #pod #pod If you're familiar with developing Mojolicious applications, you can start #pod from the app skeleton at L. #pod #pod =for comment XXX: Create `yancy generate app` and `yancy generate lite-app` commands #pod #pod To begin writing a new application from scratch, create a C #pod directory and add a C file that extends the C class: #pod #pod package MyApp; #pod use Mojo::Base 'Yancy', -signatures; #pod #pod As in any other L app, add your routes, plugins, and other setup to #pod the C method. Don't forget to call Yancy's L method! #pod #pod sub startup( $self ) { #pod $self->SUPER::startup; #pod # ... Add your routes and other setup here #pod } #pod #pod Next, create a configuration file named C to connect to your database: #pod #pod { #pod backend => 'sqlite:my_app.db', #pod } #pod #pod Last, create a L #pod named C