New Site Architecture

From GCD
Revision as of 08:45, 5 May 2008 by Handrews (talk | contribs) (Protected "New Site Architecture": For now, this page consists of my notes on architecture- to be opened up once I get the first version ready. [edit=sysop:move=sysop])
Jump to navigation Jump to search

Introduction

This page explains the architectural principles behind the GCD's new web site implementation. The goal is to make it clear to anyone participating in the project how the pieces fit together, where new code should be added for any given purpose, and how to find existing code in the tree.

The new site is written primarily in Python with a mysql back end. In addition to HTML/XHTML and CSS, the front end may employ some amount of JavaScript. The exact nature, amount and library usage of this JavaScript has yet to be determined. The application framework we are using is Django, which is discussed in more detail below.

The GCD will adhere to the following major architectural principles for the new site:

  • Application code will be organized along Model/View/Controller (MVC) lines, as facilitated by Django.
  • GCD data will be viewable in some clear and reasonable form on all browsers.


Django

Model

Controller (Django Views)

View (Django Templates)

Admin Site

Migration Tools

User Interface

HTML

CSS