layout | title | nav_exclude | permalink | seo | ||||
---|---|---|---|---|---|---|---|---|
home |
Just the Class |
true |
index.html |
|
Just the Class is a GitHub Pages template developed for the purpose of quickly deploying course websites. In addition to serving plain web pages and files, it provides a boilerplate for:
- announcements,
- a course calendar,
- a staff page,
- and a weekly schedule.
Just the Class is a template that extends the popular Just the Docs theme, which provides a robust and thoroughly-tested foundation for your website. Just the Docs include features such as:
- automatic navigation structure,
- instant, full-text search and page indexing,
- and a set of UI components and authoring utilities.
Getting started with Just the Class is simple.
- Create a new repository based on Just the Class.
- Update
_config.yml
andindex.md
/README.md
with your course information. Be sure to update the url and baseurl. - Configure a publishing source for GitHub Pages. Your course website is now live!
- Edit and create
.md
Markdown files to add more content pages._config.yml
- update first - its contents are not auto-refreshed like the .md pages do. To see the changes to its contents, stop/restart Jekyllabout.md
- make sure to update the Syllabus and course policiesannouncements.md
- skip, if not using the website Announcementscalendar.md
- the information from this file is displayed at the top of the page that lists weekly topics and due dates;- if not using reflections, make sure to comment-out that part of the instructions.
- The Calendar is populated using the files in the
_modules
folder. These are added semi-automatically, using a scriptgenerate_due_dates.py
that hard-codes start and end dates, etc.
faq.md
- make sure to update the QnA based on your course information. After you update the Syllabus and the Calendar, make sure you address the typical first-week questions and clarify the#weekly-pattern-and-planning-your-work
section- can be omitted if you are short on time or you'd rather answer these repeated questions yourself
index.md
- the front page of the course; some of the info there, like the course title, come from the_config.yml
filejekyll.sh
- no need to change: run it as a shortcut for thebundle
commandquiz.md
- make sure to update the instructions based on your course quiz structure and policies- can be omitted if you are short on time or you'd rather answer these repeated questions yourself
schedule.md
- the information for it is pulled from the_schedules/weekly.md
--> make sure to update the latter - usually done via a script- use the two scripts in
_modules
to automatically generate the weekly modules on the Calendar - read the script documentation and the TODOs that are included inside the
.py
files
- use the two scripts in
staff.md
- the information for it is pulled from the_staffers
and images are in theassets/images
--> make sure to update them (see the_example.md
to help you get started with a template; there is a404.png
for anyone who doesn't want their picture included)success.md
- make sure to change the Roadmap to align with your course calendar- can be omitted if you are short on time
- For the
ref/
folder, I recommend initially comitting thegoals.md
, since it's referenced in the Syllabus andkeyboard.md
(+debug
?); theide
shows them how to install Python and is part of the FAQ; the rest of them can be added later, when they become relevant.data-structures
- a comparison table for strings, lists, tuples and namedtuples, dictionariesdebug
- a good one to release initially as well - contains common errors and troubleshooting tipsgoals
- a list of CSW8 learning goals/objectiveside
- how to set up IDLE + common issues/warnings; include when covering functions/IDE/Gradescopeindex
- auto-generated index page for this Categorykeyboard
- common keyboard symbols and their nameslabtocode
- how to convert lab instructions to code; include when covering functions
- Initial commit should include the following files (if using announcements):
README.md _announcements _config.yml _includes/ _layouts/ _modules/ _sass/ _schedules _staffers about.md announcements.md assets/ calendar.md faq.md index.md jekyll.sh ref/goals.md ref/keyboard.md schedule.md staff.md success.md
- include
debug.md
?
- include
Just the Class has been used by instructors at Stanford University (CS 161), UC Berkeley (Data 100), UC Santa Barbara (CSW8), Northeastern University (CS4530/5500), and Carnegie Mellon University (17-450/17-950). Share your course website and find more examples in the show and tell discussion!
Just the Class requires no special Jekyll plugins and can run on GitHub Pages' standard Jekyll compiler. To setup a local development environment, clone your template repository and follow the GitHub Docs on Testing your GitHub Pages site locally with Jekyll.