Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Accelerated Pylons Dev with BlastOff

Accelerated Pylons Dev with BlastOff

Introducing BlastOff, my open source Pylons template to help accelerate Python + Pylons web application development.

Presented at the Melbourne Python User Group, Oct 2009.

Chris Miles

October 13, 2009
Tweet

More Decks by Chris Miles

Other Decks in Programming

Transcript

  1. Accelerated
    Pylons
    Dev with
    BlastOff
    Chris Miles
    Melbourne Python User
    Group
    Oct 2009
    Image by lecates @ flickr / CC BY-NC 2.0
    Wednesday, 14 October 2009

    View full-size slide

  2. What is BlastOff?
    A Pylons application boilerplate as a
    PasteScript template
    Similar to the Pylons default
    application template but pre-
    configured with more functionality
    Wednesday, 14 October 2009

    View full-size slide

  3. Pylons Template
    SQLAlchemy 0.5 ORM support
    mako template support
    Routes dispatching
    Sessions
    Caching
    Custom error handling
    Static file serving
    Wednesday, 14 October 2009

    View full-size slide

  4. BlastOff Template
    Pylons template, including mako &
    SQLAlchemy
    Authentication using repoze.who
    ToscaWidgets middleware
    User registration form using
    ToscaWidgets (tw.forms)
    Email confirmation for new user accounts
    (optional)
    Wednesday, 14 October 2009

    View full-size slide

  5. BlastOff Template
    TurboMail 3.0 for email support
    WebFlash for “flash” messages
    Default user creation (optional)
    Database schema version control using
    SchemaBot (optional)
    Wednesday, 14 October 2009

    View full-size slide

  6. BlastOff Template
    Database administration interface
    using RUM (optional) (not yet released)
    Model unit tests
    Functional tests
    Wednesday, 14 October 2009

    View full-size slide

  7. Installation
    easy_install BlastOff
    Verify:
    $ paster create --list-templates
    Available templates:
    blastoff: A Pylons template
    pylons: Pylons application
    pylons_minimal: Pylons minimal
    […]
    Wednesday, 14 October 2009

    View full-size slide

  8. Usage
    $ paster create -t blastoff BOTest
    Selected and implied templates:
    BlastOff#blastoff A Pylons template providing a working site skeleton
    configured with SQLAlchemy, mako, repoze.who, ToscaWidgets and SchemaBot.
    Variables:
    egg: BOTest
    package: botest
    project: BOTest
    Enter sqlalchemy_url (The SQLAlchemy URL of the database) ['sqlite:///%(here)s/
    development.db']:
    Enter use_schemabot (Enable database schema version control using SchemaBot)
    [True]:
    Enter email_confirmation (True/False: New users must click activation link from
    confirmation email) [True]:
    Enter rum_admin (True/False: Add database admin interface (using RUM) at /admin)
    [True]:
    Enter default_user (Default username to create, password will match username
    (leave blank for no default user)) ['']: admin
    Creating template blastoff
    Creating directory ./BOTest
    […]
    Wednesday, 14 October 2009

    View full-size slide

  9. Demo
    Wednesday, 14 October 2009

    View full-size slide

  10. Other Pylons Templates
    Shabti
    PylonsTemplates
    See Pylons wiki:
    http://wiki.pylonshq.com/display/
    pylonsprojects/Pylons+Project+Templates
    Wednesday, 14 October 2009

    View full-size slide

  11. BlastOff Links
    Download:
    http://pypi.python.org/pypi/BlastOff
    Source / wiki / issues:
    http://bitbucket.org/chrismiles/blastoff/
    Wednesday, 14 October 2009

    View full-size slide