Basic architecture

Technology

Filmaster is built using the Django framework and Python programming language. It is designed to use PostgreSQL database engine and run on GNU/Linux (but MS Windows operating system for development is also supported).

Modules

The project is divided into modules. The key modules are:

  • config (not a real module, just some configuration files, most important being the url translation infrastructure - TODO describe on a new page)
  • core (all core classes like Film, Person, Rating, etc)
  • blog (personal blogs)
  • useractivity (aggregating different activities like comments, blolg entries and short reviews into one generic entity: user activities. Powers The Planet)
  • recommendations (all the core connected with computing and displaying of film recommendations and other similar components)
  • event (special events management, like user voting for the Academy Awards)
  • import_ratings (import ratings insfrastructure, currently supposrted are: Criticker and IMDB)
  • utils (generic-use utilities)

We also use a few modules borrowed from other projects (mainly on BSD license):

  • account (registration and login in) - external component borrowed from the Pinax project
  • userprofile (displaying the user profiles) - external component, requires refactoring and cleanup
  • friends and friends_app (comrades management) - external components borrowed from the Pinax project
  • tagging (all tagging stuff) - external component, heavily modified for our purposes
  • threadedcomments (all comments) - external component, heavily modified for our purposes
  • django_openidauth and django_openidconsumer (open ID logging infrastructure)
  • messages (private messages) - external component borrowed from the Pinax project
  • pagination (enhances pagination) - external component borrowed from the Pinax project

Modules not currently used (but planned):

  • bbauth
  • gravatar
  • timezones
  • voting

Labels

documentation documentation Delete
Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.