Skip to content

Commit 224c4cc

Browse files
authored
Merge pull request #3 from AppliedMachineLearning-Lab/blog
Add News/Blog
2 parents cd25488 + 31c0a13 commit 224c4cc

8 files changed

Lines changed: 264 additions & 1 deletion

File tree

README.md

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,25 @@ Then:
2222
3. **View the site**: Open `http://localhost:4000` in your browser
2323

2424

25+
## Adding a Blog Entry
26+
27+
Create a new file in `_posts/` named `YYYY-MM-DD-your-title.md` with the following front matter:
28+
29+
```markdown
30+
---
31+
layout: post
32+
title: "Your Post Title"
33+
date: YYYY-MM-DD
34+
author: Your Name
35+
categories: [A list of categories]
36+
description: false
37+
---
38+
39+
Your content here...
40+
```
41+
42+
The post will automatically appear on the [/news/](/news/) page. The date in the filename controls the sort order.
43+
2544
## Files
2645

2746
Please *do not* commit files for downloading (like lecture slides or assignments) into this repo. Create a separate repo or use a different hoster for this.

_config.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,10 @@ description: The web page of the AML Lab @ Uni Bonn.
33
remote_theme: pages-themes/cayman@v0.2.0
44
plugins:
55
- jekyll-remote-theme
6+
- jekyll-paginate
7+
paginate: 5
8+
paginate_path: "/news/page:num/"
9+
permalink: /news-entry/:year-:month-:day-:title/
610
exclude:
711
- README.md
812
- vendor

_includes/navigation.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
</a>
66
<ul class="nav-menu">
77
<li><a href="{{ site.baseurl }}/">Home</a></li>
8+
<li><a href="{{ site.baseurl }}/news/">News</a></li>
89
<li><a href="{{ site.baseurl }}/team">Team</a></li>
910
<li class="dropdown">
1011
<a href="{{ site.baseurl }}/research/" class="dropbtn">Research</a>

_layouts/post.html

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
---
2+
layout: default
3+
---
4+
5+
<article class="post">
6+
<header class="post-header">
7+
<div class="post-meta">
8+
<time datetime="{{ page.date | date_to_xmlschema }}">{{ page.date | date: "%B %-d, %Y" }}</time>
9+
{% if page.author %} &middot; {{ page.author }}{% endif %}
10+
{% if page.categories.size > 0 %}
11+
&middot; {% for cat in page.categories %}<span class="post-tag">{{ cat }}</span>{% unless forloop.last %} {% endunless %}{% endfor %}
12+
{% endif %}
13+
</div>
14+
</header>
15+
16+
<div class="post-content">
17+
{{ content }}
18+
</div>
19+
20+
<footer class="post-footer">
21+
<a href="{{ '/news/' | relative_url }}" class="back-to-news">&larr; Back to News</a>
22+
</footer>
23+
</article>
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
---
2+
layout: post
3+
title: "Welcome to the AML Lab Blog"
4+
date: 2026-04-15
5+
author: Tobias Deußer
6+
categories: [News]
7+
description: false
8+
---
9+
10+
Welcome to the official blog of the Applied Machine Learning Lab at the University of Bonn! This space is where we share updates about our research, courses, events, and insights from our work in machine learning.
11+
12+
We will use this blog to communicate with students, collaborators, and the broader ML community. Expect posts on topics such as:
13+
14+
- **Research highlights**: summaries of recent papers and ongoing projects
15+
- **Course announcements**: important dates, new materials, and tips for students
16+
- **Lab news**: new members, conference visits, and collaborations
17+
- **Tutorials and how-tos**: practical guides related to our research areas
18+
19+
We look forward to sharing our work with you. Stay tuned!

assets/css/style.scss

Lines changed: 147 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -136,6 +136,153 @@ $section-headings-color: #005baa;
136136
}
137137
}
138138

139+
/* News / Blog Styles */
140+
.news-list {
141+
display: flex;
142+
flex-direction: column;
143+
gap: 2rem;
144+
margin-bottom: 2.5rem;
145+
}
146+
147+
.post-card {
148+
border: 1px solid #e0e0e0;
149+
border-radius: 6px;
150+
padding: 1.5rem 2rem;
151+
background: #fff;
152+
box-shadow: 0 1px 3px rgba(0,0,0,0.06);
153+
transition: box-shadow 0.2s ease;
154+
}
155+
156+
.post-card:hover {
157+
box-shadow: 0 3px 8px rgba(0,0,0,0.12);
158+
}
159+
160+
.post-card-title {
161+
margin: 0 0 0.4rem 0;
162+
font-size: 1.4rem;
163+
}
164+
165+
.post-card-title a {
166+
color: #005baa;
167+
text-decoration: none;
168+
border: none;
169+
}
170+
171+
.post-card-title a:hover {
172+
text-decoration: underline;
173+
}
174+
175+
.post-meta {
176+
font-size: 0.85rem;
177+
color: #666;
178+
margin-bottom: 0.8rem;
179+
}
180+
181+
.post-tag {
182+
display: inline-block;
183+
background: #e8f0fb;
184+
color: #005baa;
185+
border-radius: 3px;
186+
padding: 0.1em 0.5em;
187+
font-size: 0.8rem;
188+
font-weight: 600;
189+
}
190+
191+
.post-excerpt {
192+
color: #444;
193+
line-height: 1.6;
194+
margin-bottom: 1rem;
195+
}
196+
197+
.read-more-link {
198+
color: #005baa;
199+
font-weight: 600;
200+
text-decoration: none;
201+
border: none;
202+
}
203+
204+
.read-more-link:hover {
205+
text-decoration: underline;
206+
}
207+
208+
/* News pagination */
209+
.news-pagination {
210+
display: flex;
211+
justify-content: center;
212+
align-items: center;
213+
gap: 0.4rem;
214+
margin-top: 2rem;
215+
flex-wrap: wrap;
216+
}
217+
218+
.pagination-btn {
219+
display: inline-block;
220+
padding: 0.4rem 0.85rem;
221+
border: 1px solid #005baa;
222+
border-radius: 4px;
223+
color: #005baa;
224+
text-decoration: none;
225+
font-size: 0.9rem;
226+
transition: background 0.15s, color 0.15s;
227+
}
228+
229+
.pagination-btn:hover {
230+
background: #005baa;
231+
color: #fff;
232+
text-decoration: none;
233+
border-color: #005baa;
234+
}
235+
236+
.pagination-btn.current {
237+
background: #005baa;
238+
color: #fff;
239+
font-weight: 700;
240+
pointer-events: none;
241+
}
242+
243+
.pagination-btn.disabled {
244+
color: #aaa;
245+
border-color: #ddd;
246+
pointer-events: none;
247+
cursor: default;
248+
}
249+
250+
/* Individual post */
251+
.post {
252+
max-width: 780px;
253+
}
254+
255+
.post-header {
256+
margin-bottom: 2rem;
257+
border-bottom: 2px solid #e0e0e0;
258+
padding-bottom: 1rem;
259+
}
260+
261+
.post-title {
262+
margin-bottom: 0.4rem;
263+
}
264+
265+
.post-content {
266+
line-height: 1.7;
267+
}
268+
269+
.post-footer {
270+
margin-top: 2.5rem;
271+
padding-top: 1rem;
272+
border-top: 1px solid #e0e0e0;
273+
}
274+
275+
.back-to-news {
276+
color: #005baa;
277+
font-weight: 600;
278+
text-decoration: none;
279+
border: none;
280+
}
281+
282+
.back-to-news:hover {
283+
text-decoration: underline;
284+
}
285+
139286
/* Very small screens */
140287
@media screen and (max-width: 480px) {
141288
.nav-container {

index.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,6 @@ Details about our courses are vailable [here](./teaching/).
2626
- ["_From Theory to Practice: Workshop on Large Language and Foundation Models_" at Bigdata 2025 ](./wllfm2025/)
2727
- ["_From Theory to Practice: Special Session on Large Language and Foundation Models_" at DSAA 2025 ](./ssllfm2025/) -->
2828

29-
## News
29+
## Latest Updates
3030

3131
- At last years IEEE BigData (2025) conference, the AML Lab had 9 papers accepted and presented. A few days ago, they were added to the IEEE Xplore repository. Follow [this link](https://ieeexplore.ieee.org/xpl/conhome/11400704/proceeding?sortType=vol-only-seq&isnumber=11400712&refinements=Author:Rafet%20Sifa) to access them. We will report more on them in upcoming blog posts.

news/index.html

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
---
2+
layout: default
3+
title: News
4+
description: Insights and Updates from the AML Lab
5+
---
6+
7+
<div class="news-list">
8+
{% for post in paginator.posts %}
9+
<article class="post-card">
10+
<h2 class="post-card-title"><a href="{{ post.url | relative_url }}">{{ post.title }}</a></h2>
11+
<div class="post-meta">
12+
<time datetime="{{ post.date | date_to_xmlschema }}">{{ post.date | date: "%B %-d, %Y" }}</time>
13+
{% if post.author %} &middot; {{ post.author }}{% endif %}
14+
{% if post.categories.size > 0 %}
15+
&middot; {% for cat in post.categories %}<span class="post-tag">{{ cat }}</span>{% unless forloop.last %} {% endunless %}{% endfor %}
16+
{% endif %}
17+
</div>
18+
<div class="post-excerpt">
19+
{{ post.excerpt | strip_html | truncatewords: 60 }}
20+
</div>
21+
<a href="{{ post.url | relative_url }}" class="read-more-link">Read more &rarr;</a>
22+
</article>
23+
{% endfor %}
24+
</div>
25+
26+
{% if paginator.total_pages > 1 %}
27+
<nav class="news-pagination" aria-label="News pages">
28+
{% if paginator.previous_page %}
29+
<a href="{{ paginator.previous_page_path | relative_url }}" class="pagination-btn">&laquo; Newer</a>
30+
{% else %}
31+
<span class="pagination-btn disabled">&laquo; Newer</span>
32+
{% endif %}
33+
34+
{% for page_num in (1..paginator.total_pages) %}
35+
{% if page_num == paginator.page %}
36+
<span class="pagination-btn current">{{ page_num }}</span>
37+
{% elsif page_num == 1 %}
38+
<a href="{{ '/news/' | relative_url }}" class="pagination-btn">{{ page_num }}</a>
39+
{% else %}
40+
<a href="{{ site.paginate_path | relative_url | replace: ':num', page_num }}" class="pagination-btn">{{ page_num }}</a>
41+
{% endif %}
42+
{% endfor %}
43+
44+
{% if paginator.next_page %}
45+
<a href="{{ paginator.next_page_path | relative_url }}" class="pagination-btn">Older &raquo;</a>
46+
{% else %}
47+
<span class="pagination-btn disabled">Older &raquo;</span>
48+
{% endif %}
49+
</nav>
50+
{% endif %}

0 commit comments

Comments
 (0)