Skip to content

Commit

Permalink
Initial commit
Browse files Browse the repository at this point in the history
  • Loading branch information
yuanzhangxiao authored Jan 6, 2024
0 parents commit eb4b5e9
Show file tree
Hide file tree
Showing 209 changed files with 26,374 additions and 0 deletions.
64 changes: 64 additions & 0 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
# This workflow uses actions that are not certified by GitHub.
# They are provided by a third-party and are governed by
# separate terms of service, privacy policy, and support
# documentation.

# Sample workflow for building and deploying a Jekyll site to GitHub Pages
name: Deploy Jekyll site to Pages

on:
# Runs on pushes targeting the default branch
push:
branches: ["main"]

# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:

# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
permissions:
contents: read
pages: write
id-token: write

# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
concurrency:
group: "pages"
cancel-in-progress: false

jobs:
# Build job
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Ruby
uses: ruby/setup-ruby@8575951200e472d5f2d95c625da0c7bec8217c42 # v1.161.0
with:
ruby-version: '3.1' # Not needed with a .ruby-version file
bundler-cache: true # runs 'bundle install' and caches installed gems automatically
cache-version: 0 # Increment this number if you need to re-download cached gems
- name: Setup Pages
id: pages
uses: actions/configure-pages@v4
- name: Build with Jekyll
# Outputs to the './_site' directory by default
run: bundle exec jekyll build --baseurl "${{ steps.pages.outputs.base_path }}"
env:
JEKYLL_ENV: production
- name: Upload artifact
# Automatically uploads an artifact from the './_site' directory by default
uses: actions/upload-pages-artifact@v3

# Deployment job
deploy:
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
runs-on: ubuntu-latest
needs: build
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4
7 changes: 7 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Keep IntelliJ files out of github to reduce potential conflicts when others import.

.idea
core.iml
_site
.jekyll-cache
.DS_Store
8 changes: 8 additions & 0 deletions .gitpod.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# This configuration file was automatically generated by Gitpod.
# Please adjust to your needs (see https://www.gitpod.io/docs/introduction/learn-gitpod/gitpod-yaml)
# and commit this file to your remote git repository to share the goodness with others.

# Learn more from ready-to-use templates: https://www.gitpod.io/docs/introduction/getting-started/quickstart

tasks:
- init: bundle install
Empty file added .nojekyll
Empty file.
80 changes: 80 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
# Changelog (Version 3)

## Version 3.2 (3/7/2023)

The Morea team is delighted to announce the release of Version 3.2. This release focuses on improved support for new Morea users, and includes:

* Addition of a "template-module" to the morea template repository.
* Documentation explaining module design and implementation using the new template-module. For details, see [Module design](https://morea-framework.github.io/docs/instructors/module-design).
* Addition of a "_module-icons" directory to the morea template repository, making over 50 PNG from past Morea modules available. For details, see [Module Icons documentation](https://morea-framework.github.io/docs/instructors/icons#module-icons).
* Documentation on how to use Gitpod for Morea development. For details, see [Choosing local vs. cloud development](https://morea-framework.github.io/docs/instructors/quick-start#choose-local-or-cloud-development)

Have fun and let us know if you run into problems.

## Version 3.1

The Morea team is delighted to announce the release of Version 3.1. This release adds a number of useful new features to Morea, including:

* Update of Bootstrap to 5.1.3. This enables style customization using [Bootstrap CSS Variables](https://getbootstrap.com/docs/5.0/customize/css-variables/).

* Morea 3.1 sites now load [FontAwesome](https://fontawesome.com/). This makes a gazillion icons available. For documentation, see the [Morea User Guide Chapter on Icons](/docs/instructors/icons).

* You can now easily create "Admonitions" or "Callouts". See the [Morea User Guide Chapter on Admonitions](/docs/instructors/admonitions) for details.

* Morea 3.1 sites now load [Anchor.js](https://www.bryanbraun.com/anchorjs/). This provides deep linking into sections of pages.

Many users might decide to wait to obtain these features until the next time they create a Morea site. If you want to upgrade an existing site to Version 3.1, then we provide guidance in the [Morea User Guide Chapter on Updating](/docs/instructors/updating).

Have fun and let us know if you run into problems.



## Version 3.0 (8/1/21)

The Morea team is delighted to announce a new major release of the system. This release should be mostly backward compatible with existing Morea instructor content, though there are extensive changes (and simplifications!) to the way sites are developed and managed.

### Summary of changes

Here is a summary of the changes from Version 2:

1. Morea 3 uses the latest releases of Jekyll (Version 4.2.0), Bootstrap (5), Bootswatch (5), FullCalendar (5.8), and ChartJS (3.5).

2. Create a new Morea 3 site using the GitHub "template" mechanism. Templates have advantages over the previous approach of cloning: you can create a private repository even though the template is a public repository, and you can create multiple repositories in a single organization from the same template.

3. Morea 3 sites are automatically built and deployed via GitHub Actions whenever there is a commit to the main branch. Unlike Morea 2, Morea 3 does not use custom scripts (such as `morea-run-local.sh`, `morea-publish.sh`, etc.).

4. Morea 3 does not require local management of multiple branches. Unlike Morea 2, there are no "src" and "gh-pages" subdirectories.

5. To build and run a Morea 3 site locally, you no longer use a custom script (`morea-run-local.sh`). Instead, you use the standard Jekyll command `bundle exec jekyll serve`.

6. To publish a Morea 3 site, you no longer use a special script (`morea-publish.sh`). Instead, you just commit your changes and push your repository to GitHub. Morea 3 uses GitHub Actions to automatically build and publish the site whenever there is a commit to the main branch in GitHub.

5. Morea 3 is (finally!) cross-platform: there should be no significant differences between development on MacOS, Linux, and Windows platforms.

Astute Morea users will also observe that https://morea-framework.github.io has been reimplemented using Docusaurus. This will make documentation easier to maintain.

### Migrating your V2 content to V3.0

Instructors who have existing Morea V2 sites for a course taught in a prior semester and who wish to build a new Morea site for a future semester will need to migrate their content. Here are the issues that have been discovered with this migration:

In Morea 3, Assessments are no longer "page fragments" (like Outcomes), but rather their own page. This leads to several breaking changes:

* The morea_summary field is now required for Assessment pages.
* The URL for interior linking to an Assessment page has changed. Please see [this page](/docs/instructors/linking-in-morea).

Morea 3 updates JSChart from Version 1 to Version 3. As a result:

* Pages that embed JSChart graphs must be updated to the JSChart 3 API. For example, see the [example Morea assessment page](https://morea-framework.github.io/morea/morea/example-javascript/assessment-javascript-1.html).

Morea 3 updates Bootstrap from Version 3 to Version 5. As a result:

* Pages that embed Bootstrap CSS and HTML must be updated to Bootstrap Version 5.


### Getting started with 3.0

If you are a current user of Morea, please read the Getting Started section of the Instructor Guide and try building a new site using your old Morea files. If you run into problems, please create an issue or send an email so we can address it.

A list of known issues and desired enhancements for Morea 3.0 is available at [https://github.com/morea-framework/morea/issues](https://github.com/morea-framework/morea/issues).

Have fun and let us know if you run into problems.
32 changes: 32 additions & 0 deletions Gemfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
source "https://rubygems.org"
# Hello! This is where you manage which Jekyll version is used to run.
# When you want to use a different version, change it below, save the
# file and run `bundle install`. Run Jekyll with `bundle exec`, like so:
#
# bundle exec jekyll serve
#
# This will help ensure the proper Jekyll version is running.
# Happy Jekylling!
gem "jekyll", "~> 4.3.2"
# This is the default theme for new Jekyll sites. You may change this to anything you like.
# gem "minima", "~> 2.5"
# If you want to use GitHub Pages, remove the "gem "jekyll"" above and
# uncomment the line below. To upgrade, run `bundle update github-pages`.
# gem "github-pages", group: :jekyll_plugins
# If you have any plugins, put them here!
group :jekyll_plugins do
# gem "jekyll-feed", "~> 0.12"
end

# Windows and JRuby does not include zoneinfo files, so bundle the tzinfo-data gem
# and associated library.
platforms :mingw, :x64_mingw, :mswin, :jruby do
gem "tzinfo", "~> 1.2"
gem "tzinfo-data"
end

# Performance-booster for watching directories on Windows
gem "wdm", "~> 0.1.1", :platforms => [:mingw, :x64_mingw, :mswin]
gem "webrick", "~> 1.7"
gem 'html-proofer'
gem 'jekyll-gist'
115 changes: 115 additions & 0 deletions Gemfile.lock
Original file line number Diff line number Diff line change
@@ -0,0 +1,115 @@
GEM
remote: https://rubygems.org/
specs:
addressable (2.8.1)
public_suffix (>= 2.0.2, < 6.0)
colorator (1.1.0)
concurrent-ruby (1.2.2)
em-websocket (0.5.3)
eventmachine (>= 0.12.9)
http_parser.rb (~> 0)
ethon (0.16.0)
ffi (>= 1.15.0)
eventmachine (1.2.7)
faraday (2.7.4)
faraday-net_http (>= 2.0, < 3.1)
ruby2_keywords (>= 0.0.4)
faraday-net_http (3.0.2)
ffi (1.15.5)
forwardable-extended (2.6.0)
google-protobuf (3.22.0-arm64-darwin)
google-protobuf (3.22.0-x86_64-linux)
html-proofer (4.4.3)
addressable (~> 2.3)
mercenary (~> 0.3)
nokogiri (~> 1.13)
parallel (~> 1.10)
rainbow (~> 3.0)
typhoeus (~> 1.3)
yell (~> 2.0)
zeitwerk (~> 2.5)
http_parser.rb (0.8.0)
i18n (1.12.0)
concurrent-ruby (~> 1.0)
jekyll (4.3.2)
addressable (~> 2.4)
colorator (~> 1.0)
em-websocket (~> 0.5)
i18n (~> 1.0)
jekyll-sass-converter (>= 2.0, < 4.0)
jekyll-watch (~> 2.0)
kramdown (~> 2.3, >= 2.3.1)
kramdown-parser-gfm (~> 1.0)
liquid (~> 4.0)
mercenary (>= 0.3.6, < 0.5)
pathutil (~> 0.9)
rouge (>= 3.0, < 5.0)
safe_yaml (~> 1.0)
terminal-table (>= 1.8, < 4.0)
webrick (~> 1.7)
jekyll-gist (1.5.0)
octokit (~> 4.2)
jekyll-sass-converter (3.0.0)
sass-embedded (~> 1.54)
jekyll-watch (2.2.1)
listen (~> 3.0)
kramdown (2.4.0)
rexml
kramdown-parser-gfm (1.1.0)
kramdown (~> 2.0)
liquid (4.0.4)
listen (3.8.0)
rb-fsevent (~> 0.10, >= 0.10.3)
rb-inotify (~> 0.9, >= 0.9.10)
mercenary (0.4.0)
nokogiri (1.14.2-arm64-darwin)
racc (~> 1.4)
nokogiri (1.14.2-x86_64-linux)
racc (~> 1.4)
octokit (4.25.1)
faraday (>= 1, < 3)
sawyer (~> 0.9)
parallel (1.22.1)
pathutil (0.16.2)
forwardable-extended (~> 2.6)
public_suffix (5.0.1)
racc (1.6.2)
rainbow (3.1.1)
rake (13.1.0)
rb-fsevent (0.11.2)
rb-inotify (0.10.1)
ffi (~> 1.0)
rexml (3.2.5)
rouge (4.1.0)
ruby2_keywords (0.0.5)
safe_yaml (1.0.5)
sass-embedded (1.58.3)
google-protobuf (~> 3.21)
rake (>= 10.0.0)
sawyer (0.9.2)
addressable (>= 2.3.5)
faraday (>= 0.17.3, < 3)
terminal-table (3.0.2)
unicode-display_width (>= 1.1.1, < 3)
typhoeus (1.4.0)
ethon (>= 0.9.0)
unicode-display_width (2.4.2)
webrick (1.8.1)
yell (2.2.2)
zeitwerk (2.6.7)

PLATFORMS
arm64-darwin-21
x86_64-linux

DEPENDENCIES
html-proofer
jekyll (~> 4.3.2)
jekyll-gist
tzinfo (~> 1.2)
tzinfo-data
wdm (~> 0.1.1)
webrick (~> 1.7)

BUNDLED WITH
2.4.7
Loading

0 comments on commit eb4b5e9

Please sign in to comment.