Skip to content
/ Dancer Public
forked from PerlDancer/Dancer

Minimal-effort oriented web application framework for Perl (port of Ruby's Sinatra)

Notifications You must be signed in to change notification settings

anirvan/Dancer

This branch is 1 commit ahead of, 4773 commits behind PerlDancer/Dancer:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

7299048 · Feb 13, 2010
Feb 13, 2010
Jan 15, 2010
Feb 11, 2010
Feb 6, 2010
Jan 29, 2010
Oct 8, 2009
Jan 29, 2010
Feb 9, 2010
Feb 9, 2010
Feb 9, 2010
Feb 6, 2010
Jan 29, 2010
Jan 26, 2010

Repository files navigation

                                    Dancer

                  The easiest way to write a webapp with Perl                                    

=== ABOUT ===

That project intends to become a port of Ruby's Sinatra
framework: a framework for building web application with
minimal-effort in mind. The user should be able to define a
webapp with very few lines of codes.

=== NEWS === 

Dancer's development moves very fast, to stay tuned follow 
sukria on Twitter: http://twitter.com/sukria or his blog
http://sukria.net/fr/tag/Dancer

=== EXAMPLE ===

To create a new Dancer application, use the helper script "dancer" provided
with this distribution:

    $ dancer -a mywebapp
    + mywebapp 
    + mywebapp/config.yml
    + mywebapp/views
    + mywebapp/views/layouts
    [..]

You have then a new Dancer application in 'mywebapp'.

Here is an example of a webapp built with Dancer:

    # webapp.pl
    #!/usr/bin/perl

    use Dancer;

    get '/' => sub {
        "Hello There!"
    };

    get '/hello/:name' => sub {
        "Hey ".params->{name}.", how are you?";
    };

    post '/new' => sub {
        "creating new entry: ".params->{name};
    };

    Dancer->dance;

When running this script, a webserver is running and ready to serve:    

    $ perl ./webapp.pl
    >> Listening on 127.0.0.1:3000
    == Entering the development dance floor ...

Then it's possible to access any route defined in the script:

    $ curl http://localhost:3000/
    Hello There!


=== DEPENDENCIES ===

Dancer depends on the following modules

    - HTTP::Server::Simple::PSGI
    - HTTP::Body
    - Exception::Class

Optional modules may be needed if you want to use soem
features (but are not required for a basic usage). 
Dependency-checks are performed at runtime.

Most common modules you may want are:

	- Template (for Template::Toolkit support)
	- YAML (for configuration files)
	- Plack (if you want to deploy your application with
	  PSGI)

=== PRODUCTION MATTERS ===

This is a work in progress.

Dancer supports PSGI/Plack, to run a Dancer app with PSGI/Plack
just bootstrap your application with the helper script
`dancer' like the following:

	$ dancer -a MyWebApp

You'll find a file in there called `app.psgi', use this file
to configure your PSGI environment, as explained in the
revelant documentation of your PSGI server.

For instance, with plackup, just do the following:

	$ plackup -a app.psgi

=== WEBSITE ===

For more details about the project, checkout the official website:
http://dancer.sukria.net or checkout the documentation at
http://search.cpan.org/dist/Dancer/

=== CONTACT ===

You can reach the development team on IRC: irc.perl.org,
chan #dancer

About

Minimal-effort oriented web application framework for Perl (port of Ruby's Sinatra)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Perl 100.0%