mb_server is the part of MusicBrainz that displays pages to the users, and is our most "obvious" product. Recently, we have moved away from our own framework in favour of using Catalyst. This is a more flexible (and arguably, more powerful) framework, that will hopefully let us concentrate on adding new features to MusicBrainz rapidly.
This manual is to help document how the new server runs as clearly as possible, in the hope that new developers will be able to join us and swiftly begin commiting patches.
As there is a lot of content to be covered, I've tried to split the manual up into smaller sections. Not everyone will be interested in each part, so feel free to take what you need :-)
For Perl Developers
- A Catalyst primer - an introduction to Catalyst's philosophy
- Models - How to use the models, and write your own
- Facades - The rationale behind the current facade system
- Controllers - Explanations about controller actions, and how to write your own
- Working with forms - How to work with Form::Processor
For Template Developers
- Template Toolkit primer - a brief tutorial of Template Toolkits syntax
- Pre-written components - just plug and play!
- Best practices when writing templates
- Deployment - how to get mb_server up and running for development or production