Folder Structure

Root Directory Structure

The root of your application contains the following items:

  • app - contains code related specifically to your application.
  • ferris - contains Ferris’ core code.
  • plugins - contains re-usable components that you can use from your application.
  • packages - contains 3rd party libraries (such as pytz, google apis, etc.)
  • app.yaml - Normal App Engine configuration. You can modify your application configuration here.
  • settings.py - Global application (and plugin) configuration. You can load these settings by importing the settings module.

Application Directory Structure

The app folder contains the following items:

  • models - Contains model modules.
  • handlers - Contains handler modules.
  • templates - Contains template files and macros.
  • static - Contains static resources such as javascript, css, and images.
  • tests - Contains any test specs.
  • routes.py - Contains route and plugin configuration. You can enable plugins and change routing rules here. As most routing happens automatically, you’ll use this primarily to enable plugins.
  • listeners.py - Contains event listerers for the global event bus. You can use this to set the applications theme and enforce application-wide security settings.

Table Of Contents

Previous topic

User’s Guide

Next topic

MVC in Ferris

This Page