Skip to content

mariiiiiia/profapp

 
 

Repository files navigation

ProfApp

An application to assist a university professor with his data management.

Install

Create a virtualenv and activate it:

$ virtualenv --no-site-packages .
$ source bin/activate

Install django-1.6 and django-bootsrap-toolkit:

$ bin/pip install django===1.6.11 django-bootstrap-toolkit

Create a django project and clone this project into it:

$ bin/django-admin.py startproject ProfessorSite
$ cd ProfessorSite
$ git clone git@github.com:fakedrake/django-profapp profapp

Edit ProfessorSite/settings.py to know of our application and dependencies, also define a static directory and setup the database to your preference (sqlite3 here):

...

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3', # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.
        'NAME': 'database',                      # Or path to database file if using sqlite3.
        # The following settings are not used with sqlite3:
        'USER': '',
        'PASSWORD': '',
        'HOST': '',                      # Empty for localhost through domain sockets or '127.0.0.1' for localhost through TCP.
        'PORT': '',                      # Set to empty string for default.
    }
}

   ...

STATIC_ROOT='/path/to/ProfessorSite/static/'

...

TEMPLATE_CONTEXT_PROCESSORS = (
    "django.contrib.auth.context_processors.auth",
    "django.core.context_processors.debug",
    "django.core.context_processors.i18n",
    "django.core.context_processors.media",
    "django.core.context_processors.static",
    "django.core.context_processors.tz",
    "django.contrib.messages.context_processors.messages",
    "django.core.context_processors.request",)


...

INSTALLED_APPS = (
...
'profapp',
'bootstrap_toolkit'
)

Now you can run manage.py

$ ../bin/python manage.py syncdb
$ ../bin/python manage.py collectstatic
$ ../bin/python manage.py runserver

And you have a fully functional development server!

Roadmap

There is still very very much to do before this is alpha. This is a roadmap mockup:

  • Buildout project structure.
  • List/Create/Update/Delete each content type:
    Student
    This represents a student, ideally it should communicate with LDAP.
    Semester Subject
    This is a subject per semesster. Each semester a professor should need to create a new set of these for each subject.
    Exam
    This is an exam.
    Grade
    A student’s grade on a specific exam.
  • Copy semester subjects from old years.
  • Grade exports for semester subjects.
  • Graphic design
  • Searching: Find a smart way to make searching efficient.
  • Professor accounts.

About

A webapp for professors to manage their work

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Python 79.0%
  • TeX 21.0%