Giter Site home page Giter Site logo

submitty / submitty.github.io Goto Github PK

View Code? Open in Web Editor NEW
20.0 28.0 53.0 111.77 MB

Main Webpage for Submitty

Home Page: http://submitty.org

License: MIT License

HTML 8.36% Ruby 0.60% JavaScript 56.22% Shell 0.07% SCSS 31.93% CSS 2.82%
submitty documentation hacktoberfest

submitty.github.io's Introduction

Submitty.org

This is the documentation website for Submitty, an open source course management, assignment submission, exam, and grading system.

To report issues for this repository, please file them under the Submitty/Submitty repository.

Local Development

Prerequisites

To develop the site locally, you will need to get the following dependencies:

For Bundler, depending on your system, you may need to also install the Ruby development headers (e.g. ruby-dev). On Ubuntu/Debian, for example, this would be accomplished by doing sudo apt-get install ruby-dev.

Setup

  1. Clone the respository on your local machine, e.g.,

    git clone https://github.com/Submitty/submitty.github.io.git
    
    • NOTE: We recommend placing the code in a directory/folder on your machine without spaces, because some developers have experienced errors with bundler when the full path contained spaces.
  2. Use Bundler to install the dependencies. This can be accomplished by running:

    bundle install
    • NOTE: During the install, it may hang up when installing the dependency nokogiri. Don't worry: continue waiting. If it still is stalling here, press enter and it should continue.

    • NOTE: If an error is thrown during the installation process you may need to downgrade from 3.0 to use Ruby-2.7 and make sure this is indeed the version that the Bundler is using and not another one in a different directory.

Running the Site

  • To view the site locally, and the results of any changes you make, you will want to use the jekyll commands through Bundler, namely the serve sub-command, as shown below:

    bundle exec jekyll serve
  • NOTE: If you have an error running on the default port (4000), you can specify an alternate port, e.g.

    bundle exec jekyll serve --port 4001
  • If you wish to build the site locally instead of running it, you can do:

    bundle exec jekyll build

    which will leave the results in a _site directory.

Running the link checker

GitHub Actions checks each pull request for broken links using the htmlproofer package. If you wish to run htmlproofer locally, cd into the submitty.github.io repository and run the command:

bundle exec htmlproofer ./_site --assume-extension --empty-alt-ignore --disable_external

Editing Content

The site's content is defined with markdown files under the docs/ folder, where then it's separated by a couple of high-level sections (student, instructor, sysadmin, developer). For any new page, a new entry must be added to the navigation manually (see below). The rendered markdown uses a variant of Github Flavored Markdown. For every page, it should have a front-matter block at the top of the file that has minimally:

---
title: Page Title
---

where this is used as the main header title on the page, as well as for the title of the page in the browser. You should then not include a # Page Title in the file, rather just start your content immediately after the front-matter block.

Navigation

Editing the links on the navigation is done by editing navtreedata.js. The structure of the file is that each level is a list of objects, where the object can have the following parts:

  • name (required)
  • link
  • children

Where if link is omitted, then name will be used where it will be lowercased and spaced replaced with _. Children is then a list of objects of the above structure. Currently, the site only supports three levels of nesting (sub-sub-children).

Search

  • Add excluded_in_search: true to any documentation page's front matter to exclude that page in the search results.

Forked from Edition

This repository was created via a fork of Edition, which is a product documentation theme for Jekyll created by by CloudCannon, the Cloud CMS for Jekyll.

Ruby Version Troubleshooting

In February 2024:

submitty.github.io's People

Contributors

andrewaikens87 avatar bmcutler avatar chameco avatar cjreed121 avatar couleeapps avatar definitiveabove avatar dependabot[bot] avatar elihschiff avatar elizabethdinella avatar emaicus avatar holzbh avatar idzyre avatar jn7070 avatar kevin-mm avatar mahi-pas avatar masterodin avatar niaheermance avatar pbailie avatar pleasedefine avatar sbelsk avatar scopeinfinity avatar shailpatels avatar skara9 avatar tcyrus avatar thatcode-psy avatar thef1stofhername avatar tushargr avatar williamjallen avatar ziesski avatar zjxiaohan avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.