The Package Control website app is structured as:
app/
controllers/
- one file per route, all controllers need to be included in__init__.py
css/
- uses python Gears package to process SCSS and combine them, all files need to be added toapp.scss
html/
- raw HTML content "partials" that don't present dynamic contentjs/
- uses python Gears package to process Coffeescript and combine them, all files need to be added toapp.coffee
views/
- Backbone.js views to correspond to each controllerrouter.coffee
- each route must be wired up here to load the appropriate view
lib/
- various custom python code, including Package Control subsetmodels/
- all database interaction happens through these python filestasks/
- scripts to be invoked via the command line, normally via crontemplates/
- Handlebars/pybars templates that are used for both client and server-side templating
config/
- yaml files for configuration of various componentspublic/
- document root for web server, houses JS, CSS, robots.txt, etc