GithubHelp home page GithubHelp logo

amywhying / cs4530-fall-2022 Goto Github PK

View Code? Open in Web Editor NEW

This project forked from neu-se/cs4530-fall-2022

0.0 0.0 0.0 32.93 MB

License: MIT License

Shell 0.56% Ruby 32.00% PHP 3.37% HTML 38.61% Liquid 2.59% SCSS 22.87%

cs4530-fall-2022's Introduction

CS4530, Fall 2022: Fundamentals of Software Engineering

This repository contains the source for the website for Northeastern's CS4530, Fall 2022 class. If you are looking to browse the site, you should visit it directly, at https://neu-se.github.io/CS4530-Fall-2022/. If you are looking to edit the site, then you have come to the right place!

Websites for prior versions of this class:

License

All materials in this repository (the lectures, assignments, and also the site itself) are released under the Creative Commons Attribution-ShareAlike 4.0 License. Please feel free to reuse or remix these materials in your class. If you do, we'd love to hear your thoughts.

About this site

This website is built using Jekyll, a lighweight static website generator that takes Markdown files as input and outputs a nicely structured website according to some template. This site uses Kevin Lin's Just the Class Jekyll template, which in turn is built on the Just the Docs template.

Local development environment

The local development environment for Jekyll will allow you to run a live-updating local server that lets you preview what the website will look like when it is deployed. As you make changes to the website (in the markdown files), the development server will automatically update the site that it is serving. View the Jekyll quick start guide for more information.

  1. Follow the GitHub documentation for Setting up your GitHub Pages site locally with Jekyll.

  2. Install a local Jekyll server if you do not already have one. To do this, say

$ gem install bundler jekyll
$ bundle install
  1. Start your local Jekyll server.
$ bundle exec jekyll serve
  1. Point your web browser to http://localhost:4000
  2. Reload your web browser after making a change to preview its effect.

Canvas Sync

The GitHub Actions build system for this site is configured to automatically push content into Canvas when changes are pushed to the main branch of this repository. Specifically, it will push the assignments, lectures, and the home page material into Canvas, overwriting any changes made to those assignments, modules, or home page content in Canvas.

The Canvas sync plugin benefits from some metadata on assignments (e.g. due date) and lectures (e.g. list of lessons and curricular materials). Hence, the assignments and lectures in this site include a few extra front-matter definitions at the top of each page.

To use this plugin on a new repository, configure the GitHub secrets CANVAS_BASE_URL, CANVAS_COURSE_ID and CANVAS_TOKEN. Given that the plugin is embeded directly in the project (and not in a separate gem), it's also necessary to set the environmental variable JEKYLL_NO_BUNDLER_REQUIRE to true. Ideally, after this course offering is complete, the plugin should be extracted to its own module for better reusability. Note that GitHub Pages limits which plugins can be built using the standard GitHub Pages builder, and hence, the canvas sync plugin won't work if built using GitHub Pages. However, GitHub Actions will build whatever you want, including Jekyll sites with custom plugins. See the GitHub Actions configuration in this repo.

Automatic website previews

This repository is also built by Netlify. We do not use Netlify to host the production site, but use it for development. Each commit to this repository (to any branch) is automatically deployed to a publicly-accessible web address, allowing for an easy preview/review of what the site will look like given some change. The easiest way to use this workflow is to create a pull request: Netlify will add a status message on the pull request with a link to the current deploy preview of the site as it is in that pull request. As you push more commits to the pull request, Netlify will continue to update the site. Alternatively, you can log into the Netlify control panel using GitHub sign-in and view the complete deployment history, with direct links to all deploy previews (not just for pull requests).

cs4530-fall-2022's People

Contributors

jon-bell avatar abhutta0 avatar amywhying avatar mwand avatar jayraj25 avatar ferran9908 avatar shashwatrathod avatar vaishnavishah 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.