Skip to content
Surf Wiki
Save to docs
technology/web

From Surf Wiki (app.surf) — the open knowledge base

Dancer (software)

Web framework


Summary

Web framework

FieldValue
nameDancer
logoDancer logo.png
authorAlexis Sukrieh
released
latest release version
latest release date
programming languagePerl
operating systemCross-platform
genreWeb application framework
licenseGPL and PAL
website

the web framework

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. Development of Dancer1 was at first frozen, but was later continued to maintain backward compatibility for existing apps.

Dancer is developed through GitHub, with stable releases available via CPAN. Dancer2 is released as a separate module.

Example

PERL
#!/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.

References

References

  1. "All About Dancer - In Conversation With Sawyer X Part 2".
  2. "Dancer 1 and Dancer 2, what we're going to do".
Wikipedia Source

This article was imported from Wikipedia and is available under the Creative Commons Attribution-ShareAlike 4.0 License. Content has been adapted to SurfDoc format. Original contributors can be found on the article history page.

Want to explore this topic further?

Ask Mako anything about Dancer (software) — get instant answers, deeper analysis, and related topics.

Research with Mako

Free with your Surf account

Content sourced from Wikipedia, available under CC BY-SA 4.0.

This content may have been generated or modified by AI. CloudSurf Software LLC is not responsible for the accuracy, completeness, or reliability of AI-generated content. Always verify important information from primary sources.

Report