Skip to content

A simple way for instructors to set up a webpage for their class.

Notifications You must be signed in to change notification settings

giannic/course-frame

Repository files navigation

COURSE FRAME

Introduction
`````````````
This project aims to provide an easy and quick way for instructors to create
websites for their classes each term. This project is not meant to be
extensible to other domains. However, it should save the instructor plenty of
time.

The main advantages of this 'framework' are:
    There is a default clean and organized style set for the website.
    The instructor does not need to edit any HTML or CSS ever.
    There is a small learning curve to using this, if any.


Set Up
```````
0. Upload the contents of this project to the home directory of your website
   *Please back up any existing files on your server*
1. Fill out the 'course.info' file by following the labels in the file.
   *Please note that you can have multiple instructors and TAs*
2. You should be set to go! Start posting announcements, lectures, projects,
   exams and resources.


Announcements
``````````````
Post announcements by editing the 'announcements.info' file.
The layout of each announcement should be as follows:

Date
Description

Example:
January 14th, 2012
Homework 1 is posted.
February 1st, 2012
Homework 2 is posted.


Syllabus
`````````
Upload the syllabus to the top-level directory of course frame. It will be
automatically added to the site navigation. It can be any file format as it
will open in a new tab.


Posting Lectures and Notes
````````````````````````````
All lectures go into the 'lectures' directory. Each lecture should have its own
directory within 'lectures'. The files associated with each lecture should be
placed in its appropriate directory.

An example of the lectures directory structure:
lectures/
        lecture1/
                lecture_slides1.pdf
                lecture_audio.wav
        lecture2/
                lecture_slides2.pdf


Posting Projects and Homeworks
```````````````````````````````
All projects go into the 'projects' directory. Each project should have its own
directory within 'projects'. The files associated with each project should be
placed in its appropriate directory.

An example of the projects directory structure:
projects/
        homework1/
                homework1.pdf
        project1/
                project1.pdf
                starter_code.zip
        homework2/
                homework2.pdf
        project2/
                project2.pdf
                starter_code.zip


Posting Exams
``````````````
Posting exams are the same as posting projects and homeworks, but its root
directory is 'exams'.

An example of the exams directory structure:
exams/
        midterm1/
                topics_covered.txt
                practice_exams.zip
        midterm2/
                topics_covered.txt
                practice_exams.zip
        final/
                topics_covered.txt
                practice_exams.zip


Posting Resources
``````````````````
Post resources by editing the 'resources.info' file.
The layout of each link should be as follows:

Label
URL

Example:
Google
www.google.com
Penn Engineering
http://www.seas.upenn.edu


Samples
````````
If at any point, you find you are not sure what the 'info' files should look
like, please refer to the sample files in the 'samples' directory.


Tools
``````
There are a few scripts to swap between having php and html pages. They are
located in 'tools'. Execute all scripts from the top-level directory of course
frame.

cf_to_html: generates static html pages from php.
cf_to_php: generates restores the original php pages and removes html pages.
cf_update_html: updates the html pages using php. run cf_to_html.sh first.


Author
```````
gianni

About

A simple way for instructors to set up a webpage for their class.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages