Dancer (software)
Template:Short description Script error: No such module "about".
Page Module:Infobox/styles.css has no content.
| Dancer | |
|---|---|
| Lua error in package.lua at line 80: module 'Module:InfoboxImage/data' not found. | |
| [[Programmer|Original authorTemplate:Pluralize from text]] | Alexis Sukrieh |
| Initial release | Script error: No such module "Date time". |
| Written in | Perl |
| Operating system | Cross-platform |
| Type | Web application framework |
| License | GPL and PAL |
| Website | Lua error in package.lua at line 80: module 'Module:If preview' not found. |
Script error: No such module "Check for conflicting parameters".
Dancer is an open source lightweight web application framework written in Perl and inspired by Ruby's Sinatra.
In April 2011, Dancer was rewritten from scratch and released as Dancer2. The reason for the rewrite was to fix architectural issues and eliminate the use of singletons.[1] Development of Dancer1 was at first frozen, but was later continued to maintain backward compatibility for existing apps.[2]
Dancer is developed through GitHub, with stable releases available via CPAN. Dancer2 is released as a separate module.
Example
#!/usr/bin/env perl
use Dancer2;
get '/hello/:name' => sub {
return "Why, hello there " . route_parameters->get('name');
};
get '/redirectMeTo/:trgval' => sub {
redirect '/' . route_parameters->get('trgval');
};
start;
Features
Out-of-box
Unlike other frameworks such as Catalyst, Dancer only requires a handful of CPAN modules and is very self-contained.
Standalone development server
Dancer includes a standalone development server that can be used for developing and testing applications.
PSGI / Plack support
Dancer supports the PSGI specification, and can thus be run on any compliant PSGI server, including Plack, uWSGI or Mongrel 2.
Abstracted
Since most parts of Dancer are abstracted and has a plugin architecture, extending Dancer is fairly straightforward, and a thriving community has sprung up around building these extensions.
Dancer features a lightweight object system, exception throwing similar to Try::Tiny, and is fast, especially in CGI environments.
See also
Lua error in mw.title.lua at line 404: bad argument #2 to 'title.new' (unrecognized namespace name 'Portal').
References
Page Template:Reflist/styles.css has no content.
- ^ Page Module:Citation/CS1/styles.css has no content."All About Dancer - In Conversation With Sawyer X Part 2".
- ^ Page Module:Citation/CS1/styles.css has no content."Dancer 1 and Dancer 2, what we're going to do". Archived from the original on 2015-01-20. Retrieved 2015-01-20.
External links
- No URL found. Please specify a URL here or add one to Wikidata.
- PerlDancer on GitHub
- Module on CPAN
- Dancer 2, or Why I Rewrote Everything
- Script error: No such module "webarchive".
Lua error in package.lua at line 80: module 'Module:Navbox/configuration' not found. Lua error in package.lua at line 80: module 'Module:Navbox/configuration' not found.