Skip to content
This repository has been archived by the owner on Jul 6, 2023. It is now read-only.

App_Server Specification

Colorado Reed edited this page Aug 7, 2013 · 1 revision

This wiki details the app_server (the primary interaction server)

app_server implementation: the app_server is a django project and is designed using a modular "app" infrastructure

  • apps: general rule of thumb is to create a separate app when the application logic or model can be highly decoupled from the rest of the project, e.g. user account information should be highly decoupled from displaying the concepts/graphs. All apps will eventually include their own tests.py unit tests. This current structure is not set in stone and should be changed if it becomes awkward.

    • user_management: (currently only a skeleton) handles new user registration, account changes, and acount information (this will probably be split into multiple applications, eventually)

      • models should store all user information (ids, emails, passwords, saved graphs, learned nodes, learned courses, etc)

      • views: new registration view, user account view (i.e. what the user see when he clicks on his username), password-reset view

    • content_search: handles content search and related information (such as providing autocomplete json info from AJAX queries)

      • models: currently does not have any models, but we could store search statistics here

      • views: search-related views (currently landing page and search-results page)

    • graph: handles graph (learning/explore mode) logic and data

      • models: currently does not have any models, but we could store user-independent graph-generation/alteration statistics here

      • views: serves up the base view for the learning/explore mode, most of the view logic and templating is handled client-side