Concierge

Service layer orchestrator for user authentication, session management, and user data operations in Perl.

Synopsis

use Concierge::Setup;
use Concierge;

# One-time desk setup
Concierge::Setup::build_quick_desk(
    './desk',
    ['role', 'theme'],       # application-specific user fields
);

# Runtime
my $desk = Concierge->open_desk('./desk');
my $concierge = $desk->{concierge};

# Register and log in a user
$concierge->add_user({
    user_id  => 'alice',
    moniker  => 'Alice',
    email    => 'alice@example.com',
    password => 'secret123',
    role     => 'admin',
});

my $login = $concierge->login_user({
    user_id  => 'alice',
    password => 'secret123',
});

my $user = $login->{user};  # Concierge::User object

Description

Concierge coordinates three component modules behind a single API:

It provides graduated user participation levels -- visitors, guests, and authenticated users -- each returning a Concierge::User object with methods appropriate to that level.

Installation

Requires Perl 5.36 or later and the three component modules listed above.

perl Makefile.PL
make
make test
make install

Modules

Documentation

See the POD in each module for full API documentation:

perldoc Concierge
perldoc Concierge::Setup
perldoc Concierge::User

Status

Under active development (v0.5.0). API may change before 1.0.

Author

Bruce Van Allen bva@cruzio.com

License

Artistic License 2.0