In Jamroom, everything is a module or a skin, even the core. Every request goes to the core's router (modules/jrCore/router.php), which hands it to the module that owns the URL, or to a skin template. Modules add features to each other through registered features and events, without changing each other's code.
This chapter is for PHP developers who build modules. For templates and skins, see Customizing Your Skin and the Template and Function Reference.
jrBlog) is small and uses most features: a DataStore, profile pages, forms, listeners and quota settings.The pages after them are how-tos for common tasks, then tools for debugging, testing and packaging.