$ sqlite3 example.db < creation_script_not_inc.sql $ pegasus setup Example::DB dbi:SQLite:./example.db root $ pegasus run
WHO Al Newkirk - Crazy Idealistic P3rl H@ck3r
WHAT Pegasus - The Module-Starter for DBIx::Class data models
Pegasus is a simple scaffolding utility for RAD (rapid app development). It helps you generate a DBIx::Class data model with schema class, and tests.
It basically extends the convenience of using DBIx::Class::Schema::Loader. This devkit exists solely to help further eliminate the tedium when creating data models using DBIx::Class.
WHEN A developer could use Pegasus after creating the database schema at the database. Pegasus will then generate a DBIC data model.
WHERE Pegasus is far from ready for the CPAN, ... So where do pre-CPAN modules attend daycare? GitHub ofcourse:
- Pegasus CLI: https://github.com/alnewkirk/Pegasus
- Pegasus Example Model: https://github.com/alnewkirk/Pegasus-Example
HOW Pegasus Scaffold Generation
- generate schema (using DBIC S::L)
- generate sql scripts (deploy)
- generate transaction layer (Pegasus)
- generate tests (Pegasus)
Usage (from the command-line)
- $ sqlite3 example.db < creation_script_not_inc.sql
- $ pegasus setup Example::DB dbi:SQLite:./example.db root
- $ pegasus run
WHY Scaffolding helps us build it faster, bigger, better (some restrictions apply)
Also, -- Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning. Cit. Rich Cook