Skip to content

Commit b2374bf

Browse files
committed
content: added syllabus
1 parent 15bed21 commit b2374bf

File tree

6 files changed

+83
-8
lines changed

6 files changed

+83
-8
lines changed

src/components/PostCard.astro

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ export interface Props {
55
lesson: {
66
slug: string;
77
data: {
8+
unlisted?: boolean;
89
title: string;
910
description?: string;
1011
order?: number;

src/content.config.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ const lessons = defineCollection({
1111
externalLink: z.string().optional(),
1212
tags: z.array(z.string()).default([]),
1313
draft: z.boolean().default(false),
14+
unlisted: z.boolean().default(false),
1415
slides: z.boolean().default(true),
1516
resources: z.record(z.string()).optional(),
1617
}),

src/content/lessons/syllabus.md

Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
---
2+
title: 'About the course'
3+
unlisted: true
4+
---
5+
6+
## COS3100: Intro to Git
7+
8+
---
9+
10+
## Course topics
11+
12+
- Working with Bash
13+
- Working with Git
14+
- Using Git & Bash as a software developer
15+
16+
---
17+
18+
## Learning Objectives
19+
20+
- Learn to use the terminal with Bash
21+
- Navigate the file system
22+
- Use commands and tools
23+
- Write scripts
24+
25+
---
26+
27+
- Learn to use git in the terminal
28+
- From the basic to advanced commands
29+
- Explore common workflows
30+
- Understand how Git works
31+
32+
---
33+
34+
## Lecturer
35+
36+
- Name: Mihail Mikov
37+
- Occupation: Staff Engineer, Sumup
38+
- Education: Graduated AUBG in 2009
39+
- Office hours: Friday, 9:30-10:30; 14:00-15:00
40+
41+
---
42+
43+
## Grading breakdown
44+
45+
46+
| Assignment | Weight |
47+
| --------------- | --------------- |
48+
| In class attendance & participation | 10% |
49+
| Homework 1 | 15% |
50+
| Homework 2 | 20% |
51+
| Midterm test | 25% |
52+
| Final test | 30% |
53+
54+
---
55+
56+
## Schedule
57+
58+
59+
| Date | Special events |
60+
| --------------- | --------------- |
61+
| 12.09.25 | Add/Drop Week |
62+
| 19.09.25 | - |
63+
| 26.09.25 | Homework 1 due|
64+
| 03.10.25 | Midterm |
65+
| 10.10.25 | - |
66+
| 17.10.25 | Final exam + Homework 2 due|
67+
68+
69+

src/pages/index.astro

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,6 @@ const lessons = await getLessons();
2626
</div>
2727

2828
<div class="posts">
29-
{lessons.map((lesson) => <PostCard lesson={lesson} />)}
29+
{lessons.filter(l => !l.unlisted).map((lesson) => <PostCard lesson={lesson} />)}
3030
</div>
3131
</ArcticleLayout>

src/pages/lessons/index.astro

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ const lessons = await getLessons();
1313
{lessons.length === 0 ? (
1414
<p>No lessons yet. Check back soon!</p>
1515
) : (
16-
lessons.map((lesson) => <PostCard lesson={lesson} />)
16+
lessons.filter(l => !l.unlisted).map((lesson) => <PostCard lesson={lesson} />)
1717
)}
1818
</div>
1919
</ArcticleLayout>

src/pages/resources/index.astro

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,24 @@
11
---
2-
import { getCollection } from 'astro:content';
32
import ArticleLayout from '../../layouts/ArticleLayout.astro';
43
5-
const allLessons = await getCollection('lessons');
6-
const resources = allLessons.map(lesson => lesson.data.resources).reduce((all, lesson) => {
7-
return [...all, ...Object.entries(lesson || {})];
8-
}, []);
4+
import { getLessons } from '../../common/lessons.astro';
5+
96
7+
const lessons = await getLessons();
8+
9+
const links = lessons
10+
.map(lesson => lesson.data.resources)
11+
.reduce((all, lesson) => {
12+
return [...all, ...Object.entries(lesson || {})];
13+
}, []);
1014
---
1115

1216
<ArticleLayout title="Resources" description="All resources linked in lessons">
1317
<div class="page">
1418
<h1 class="posts-title">All external resources</h1>
1519

1620
<ul>
17-
{resources.map(([text, link]) => (
21+
{links.map(([text, link]) => (
1822
<li><a href={link}>{text}</a></li>
1923
))}
2024
</ul>

0 commit comments

Comments
 (0)