diff --git a/_announcements/week-0.md b/_announcements/week-0.md new file mode 100644 index 0000000..2688726 --- /dev/null +++ b/_announcements/week-0.md @@ -0,0 +1,8 @@ +--- +title: Week 0 Announcement +week: 0 +date: 2024-08-28 +--- + +Hello world! +{: .fs-5 } diff --git a/_announcements/week-1.md b/_announcements/week-1.md new file mode 100644 index 0000000..aebd5f5 --- /dev/null +++ b/_announcements/week-1.md @@ -0,0 +1,8 @@ +--- +title: Week 1 Announcement +week: 1 +date: 2024-09-08 +--- + +1. Meet +2. Profit?? \ No newline at end of file diff --git a/_includes/minutes.liquid b/_includes/minutes.liquid new file mode 100644 index 0000000..c3207ae --- /dev/null +++ b/_includes/minutes.liquid @@ -0,0 +1,20 @@ +{% capture _minutes_workspace %} + {% comment %} + Return the number of minutes between midnight and the given time string (e.g. '9:30 AM'). + + Parameters: + `time` (string): the time to convert. + {% endcomment %} + + {% assign _time = include.time %} + {% assign _hhmm = _time | split: ' ' | first | split: ':' %} + {% assign _hours = _hhmm | first | to_integer %} + {% assign _minutes = _hhmm | last | to_integer %} + {% assign _ampm = _time | split: ' ' | last | upcase %} + + {% if _ampm == 'AM' and _hours == 12 %} + {% assign _hours = _hours | minus: 12 %} + {% elsif _ampm == 'PM' and _hours != 12 %} + {% assign _hours = _hours | plus: 12 %} + {% endif %} +{% endcapture %}{% assign _minutes_workspace = '' %}{{ _hours | times: 60 | plus: _minutes }} diff --git a/_layouts/announcement.html b/_layouts/announcement.html new file mode 100644 index 0000000..3451611 --- /dev/null +++ b/_layouts/announcement.html @@ -0,0 +1,14 @@ +
+

{{ page.title }}

+ + {% if page.date %} + {{ page.date | date: '%b %e' }} + · + {% endif %} + {% assign minutes = content | strip_html | number_of_words | divided_by: 180.0 | round %} + {{ minutes }} min read + +
+ {{ content }} +
+
diff --git a/_layouts/module.html b/_layouts/module.html new file mode 100644 index 0000000..fba9c4c --- /dev/null +++ b/_layouts/module.html @@ -0,0 +1,4 @@ +

{{ page.title }}

+
+ {{ content }} +
diff --git a/_layouts/schedule.html b/_layouts/schedule.html new file mode 100644 index 0000000..d288dd5 --- /dev/null +++ b/_layouts/schedule.html @@ -0,0 +1,34 @@ +{% assign start_time = page.timeline | first %} +{% capture offset %}{% include minutes.liquid time=start_time %}{% endcapture %} +
+ + +
diff --git a/_layouts/staffer.html b/_layouts/staffer.html new file mode 100644 index 0000000..0a3d5cd --- /dev/null +++ b/_layouts/staffer.html @@ -0,0 +1,29 @@ +
+ {%- if page.photo -%} + + {%- endif -%} +
+

+ {%- if page.website -%} + {{ page.name }} + {%- else -%} + {{ page.name }} + {%- endif -%} +

+ {%- if page.pronouns -%} +

{{ page.pronouns }}

+ {%- endif -%} + {%- if page.email -%} +

{{ page.email }}

+ {%- endif -%} + {%- if page.meta -%} +
+ {%- for meta in page.meta -%} +
{{ meta[0] }}
+
{{ meta[1] | markdownify }}
+ {%- endfor -%} +
+ {%- endif -%} + {{ content }} +
+
diff --git a/_modules/week-01.md b/_modules/week-01.md new file mode 100644 index 0000000..2ea9597 --- /dev/null +++ b/_modules/week-01.md @@ -0,0 +1,23 @@ +--- +title: Introduction to SIGExample +--- + +Sep 28 +: [Java & Git](#) + : [1.1](#) + +Sep 29 +: **Section**{: .label .label-purple }[Intro to Java](#) + : [Solution](#) + +Sep 30 +: [Variables & Objects](#) + : [1.2](#), [2.1](#) + +Oct 1 +: **Lab**{: .label .label-purple } [Intro to Java](#) + +Oct 2 +: [Tracing, IntLists, & Recursion](#) + : [2.1](#) +: **HW 1 due**{: .label .label-red } diff --git a/_modules/week-02.md b/_modules/week-02.md new file mode 100644 index 0000000..667e8be --- /dev/null +++ b/_modules/week-02.md @@ -0,0 +1,23 @@ +--- +title: SIGExample Topic 1 +--- + +Oct 5 +: [Linked Lists & Encapsulation](#) + : [3.1](#), [2.2](#), [2.3](#) + +Oct 6 +: **Section**{: .label .label-purple }[Linked Lists](#) + : [Solution](#) + +Oct 7 +: [Resizing Arrays](#) + : [2.4](#), [2.5](#) + +Oct 8 +: **Lab**{: .label .label-purple } [Resizing Arrays](#) + +Oct 9 +: [Runtime Analysis](#) + : [8.1](#), [8.2](#), [8.3](#), [8.4](#) +: **HW 2 due**{: .label .label-red } diff --git a/_sass/custom/announcement.scss b/_sass/custom/announcement.scss new file mode 100644 index 0000000..c0fd146 --- /dev/null +++ b/_sass/custom/announcement.scss @@ -0,0 +1,11 @@ +.announcement { + @extend %card; + + h1, h2 { + @extend .text-gamma; + } + + .announcement-meta { + @extend .text-epsilon; + } +} diff --git a/_sass/custom/card.scss b/_sass/custom/card.scss new file mode 100644 index 0000000..7d3b6d6 --- /dev/null +++ b/_sass/custom/card.scss @@ -0,0 +1,33 @@ +@mixin abstract-card() { + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.07), 0 4px 14px rgba(0, 0, 0, 0.05); + margin: $sp-4 (-$gutter-spacing-sm); + + @include mq(md) { + border-radius: $border-radius; + margin: $sp-4 0; + } +} + +%card { + @include abstract-card(); + display: flex; + flex-direction: column; + min-width: 0; + padding: 0 $sp-4; + position: relative; + word-wrap: break-word; + + >:first-child { + border-top: none !important; + } + + >:last-child { + border-bottom: none !important; + } + + .label { + border-radius: $border-radius; + margin-left: 0; + user-select: none; + } +} diff --git a/_sass/custom/custom.scss b/_sass/custom/custom.scss new file mode 100644 index 0000000..ff66afc --- /dev/null +++ b/_sass/custom/custom.scss @@ -0,0 +1,53 @@ +// Just the Class dependencies +@import 'card'; + +// Just the Class styles +@import 'announcement'; +@import 'module'; +@import 'schedule'; +@import 'staffer'; + +// Overrides +code { + font-size: 14px; + padding: 0.2em 0.4em; + border: none; +} + +iframe { + max-width: 100%; +} + +details { + @extend .mb-4; +} + +summary { + @extend .btn, .btn-outline; + + width: 100%; +} + +.main-content { + dl { + display: block; + grid-template-columns: none; + } + + dt { + font-weight: 700; + text-align: start; + + &::after { + content: normal; + } + } + + dd { + font-weight: normal; + + + dt { + margin-top: 1em; + } + } +} diff --git a/_sass/custom/module.scss b/_sass/custom/module.scss new file mode 100644 index 0000000..6c1ab68 --- /dev/null +++ b/_sass/custom/module.scss @@ -0,0 +1,97 @@ +.main-content .module, +.module { + @extend %card; + + h1, + h2, + h3, + h4, + h5, + h6 { + &:first-child { + margin-top: $sp-4; + } + } + + >dl { + border-bottom: $border $border-color; + border-top: $border $border-color; + display: grid; + grid-template-columns: max-content 1fr; + margin: $sp-2 (-$sp-4); + + &:first-child { + margin-top: 0; + } + + &:last-child { + margin-bottom: 0; + } + + @include mq(lg) { + grid-template-columns: 1fr 7fr; + } + + %module-item { + margin: 0; + padding: $sp-2; + + @include mq(sm) { + padding: $sp-2 $sp-4; + } + } + + >dt { + @extend %module-item; + border-top: $border $border-color; + font-weight: normal; + text-align: right; + + +dd { + border-top: $border $border-color; + } + + &:first-child { + border-top: none; + + +dd { + border-top: none; + } + } + + &::after { + content: ":"; + } + } + + >dd { + @extend %module-item; + + +dd { + padding-top: 0; + } + + ol, ul, dl { + margin: 0; + } + + dl { + display: flex; + flex-direction: column; + + @include mq(sm) { + flex-direction: row; + } + + dt { + flex: 0 0 62.5%; + margin: 0; + } + + dd { + margin: 0; + } + } + } + } +} diff --git a/_sass/custom/schedule.scss b/_sass/custom/schedule.scss new file mode 100644 index 0000000..f059310 --- /dev/null +++ b/_sass/custom/schedule.scss @@ -0,0 +1,107 @@ +.schedule { + @include abstract-card(); + overflow-x: scroll; + position: relative; + + li::before { + display: none; + } + + ul.schedule-timeline, + ul.schedule-group, + ul.schedule-events { + margin-top: 0; + padding-left: 0; + } + + ul.schedule-timeline { + margin: 40px auto 0; + position: absolute; + width: 100%; + } + + .schedule-time { + @extend .fs-2; + color: $grey-dk-000; + height: 40px; + margin: 0; + padding: $sp-2; + position: relative; + + &::after { + background-color: $border-color; + content: ''; + height: 1px; + left: 0; + position: absolute; + top: 0; + width: 100%; + } + } + + .schedule-group { + display: flex; + margin-bottom: 0; + position: relative; + } + + .schedule-day { + border-left: $border $border-color; + flex: 1 0 0; + margin: 0; + min-width: 120px; + + &:first-of-type { + border-left: 0; + } + } + + h2.schedule-header { + align-items: center; + display: flex; + font-size: 18px !important; + height: 40px; + justify-content: center; + margin: 0; + } + + .schedule-events { + display: flex; + padding: 0; + position: relative; + } + + .schedule-event { + background-color: $grey-dk-000; + border-radius: $border-radius; + box-shadow: 0 10px 20px rgba(0, 0, 0, .1), inset 0 -3px 0 rgba(0, 0, 0, .2); + color: $white; + float: left; + height: 100%; + margin: 0; + padding: $sp-1 $sp-2; + position: absolute; + width: 100%; + + .name { + @extend .fs-3, .fw-700; + } + + .time, + .location { + @extend .fs-2; + } + + &.lecture { + background-color: $grey-dk-000; + } + + &.section { + background-color: $purple-000; + } + + &.office-hours { + background-color: $blue-000; + } + } +} diff --git a/_sass/custom/staffer.scss b/_sass/custom/staffer.scss new file mode 100644 index 0000000..f023e5d --- /dev/null +++ b/_sass/custom/staffer.scss @@ -0,0 +1,45 @@ +.staffer { + display: flex; + margin: $sp-4 0; + + .staffer-image { + border-radius: 50%; + height: 100px; + margin-right: $sp-4; + width: auto; + } + + .anchor-heading { + right: auto; + left: -$sp-5; + } + + .staffer-name, + .staffer-meta, + p { + margin: 0 0 $sp-1 0; + } + + .staffer-name { + @extend .d-inline-block; + } + + .staffer-pronouns { + @extend .label, .text-grey-dk-300, .bg-grey-lt-000; + + user-select: none; + } + + .staffer-meta { + dt, dd, dd + dt { + margin-top: 0; + } + } + + @include mq(sm) { + .staffer-meta { + display: grid; + grid-template-columns: auto 1fr; + } + } +} diff --git a/_schedules/weekly.md b/_schedules/weekly.md new file mode 100644 index 0000000..cd0851c --- /dev/null +++ b/_schedules/weekly.md @@ -0,0 +1,66 @@ +--- +timeline: + - '9:00 AM' + - '9:30 AM' + - '10:00 AM' + - '10:30 AM' + - '11:00 AM' + - '11:30 AM' + - '12:00 PM' + - '12:30 PM' + - '1:00 PM' + - '1:30 PM' + - '2:00 PM' + - '2:30 PM' + - '3:00 PM' + - '3:30 PM' + - '4:00 PM' + - '4:30 PM' + - '5:00 PM' + - '5:30 PM' +schedule: + - name: Monday + events: + - name: Lecture + start: 9:30 AM + end: 10:30 AM + location: 150 Wheeler + - name: Section + start: 11:30 AM + end: 12:30 PM + location: 310 Soda + - name: Office Hours + start: 12:30 PM + end: 2:00 PM + location: 271 Soda + - name: Tuesday + - name: Wednesday + events: + - name: Lecture + start: 9:30 AM + end: 10:30 AM + location: 150 Wheeler + - name: Section + start: 11:30 AM + end: 12:30 PM + location: 310 Soda + - name: Office Hours + start: 12:30 PM + end: 2:00 PM + location: 271 Soda + - name: Thursday + - name: Friday + events: + - name: Lecture + start: 9:30 AM + end: 10:30 AM + location: 150 Wheeler + - name: Section + start: 11:30 AM + end: 12:30 PM + location: 310 Soda + - name: Office Hours + start: 12:30 PM + end: 2:00 PM + location: 271 Soda +--- diff --git a/_staffers/lead1.md b/_staffers/lead1.md new file mode 100644 index 0000000..33fed1d --- /dev/null +++ b/_staffers/lead1.md @@ -0,0 +1,11 @@ +--- +name: Noah Rockoff +role: Chair +meta: [['Chair']] +pronouns: he/him +email: noahlr2@illinois.edu +website: https://cs.illinois.edu +photo: sigt.png +--- + +I am a lead. diff --git a/assets/images/acm-wordmark-light.png b/assets/images/acm-wordmark-light.png new file mode 100644 index 0000000..2acdad7 Binary files /dev/null and b/assets/images/acm-wordmark-light.png differ diff --git a/assets/images/kevin.jpg b/assets/images/kevin.jpg new file mode 100644 index 0000000..83dd323 Binary files /dev/null and b/assets/images/kevin.jpg differ diff --git a/assets/images/sigt.png b/assets/images/sigt.png new file mode 100644 index 0000000..db79a54 Binary files /dev/null and b/assets/images/sigt.png differ