Nephia

 view release on metacpan or  search on metacpan

lib/Nephia.pm  view on Meta::CPAN

package Nephia;
use 5.008005;
use strict;
use warnings;
use Nephia::Incognito;

our $VERSION = "0.87";

sub import {
    my ($class, %opts) = @_;
    my $caller = caller;
    Nephia::Incognito->incognito(%opts, caller => $caller);
}

sub call {
    my ($class, $codepath) = @_;
    my $caller = caller;
    Nephia::Incognito->unmask($caller)->call($codepath);
}

sub run {
    my $caller = caller;
    Nephia::Incognito->unmask($caller)->run(@_);
}

1;
__END__

=encoding utf-8

=head1 NAME

Nephia - A microcore architecture WAF

=head1 SYNOPSIS

    use Nephia plugins => [...];
    app {
        my $req  = req;         ### Request object
        my $id   = param('id'); ### query-param that named "id" 
        my $body = sprintf('ID is %s', $id);
        [200, [], $body];
    };

=head1 DESCRIPTION

Nephia is microcore architecture WAF. 

=head1 GETTING STARTED

Let's try to create your project.

    nephia-setup YourApp::Web

Then, you may plackup on your project directory.

Please see L<Nephia::Setup::Plugin::Basic> for detail.

=head1 BOOTSTRAP A MINIMALIST STRUCTURE

Use "--plugins Minimal" option to minimalistic setup.

    nephia-setup --plugins Minimal YourApp::Mini

Please see L<Nephia::Setup::Plugin::Minimal> for detail.

=head1 LOAD OPTIONS 

Please see L<Nephia::Core>.

=head1 DSL



( run in 0.868 second using v1.01-cache-2.11-cpan-e93a5daba3e )