diff --git a/aleksis/apps/alsijil/forms.py b/aleksis/apps/alsijil/forms.py
index 92a48aa48e254a9c12a53328c20ea334b43fca93..18c3ba48fb1f1f86eaaf4905e9ef4eb85e21518e 100644
--- a/aleksis/apps/alsijil/forms.py
+++ b/aleksis/apps/alsijil/forms.py
@@ -19,6 +19,11 @@ class LessonDocumentationForm(forms.ModelForm):
         model = LessonDocumentation
         fields = ["topic", "homework"]
 
+    def __init__(self, *args, **kwargs):
+        super().__init__(*args, **kwargs)
+
+        self.fields["homework"].label = _("Homework for the next lesson")
+
 
 class PersonalNoteForm(forms.ModelForm):
     class Meta:
diff --git a/aleksis/apps/alsijil/model_extensions.py b/aleksis/apps/alsijil/model_extensions.py
index 69dfc7c0015c3746e543f290f4ca6659f8577989..57768babbc029e3da42359550120a01fb5cf6517 100644
--- a/aleksis/apps/alsijil/model_extensions.py
+++ b/aleksis/apps/alsijil/model_extensions.py
@@ -1,13 +1,14 @@
 from datetime import date
+from typing import Optional, Union
 
-from django.db.models import Exists, OuterRef
+from django.db.models import Exists, OuterRef, QuerySet
 
 from calendarweek import CalendarWeek
 
 from aleksis.apps.chronos.models import LessonPeriod
 from aleksis.core.models import Group, Person
 
-from .models import PersonalNote
+from .models import LessonDocumentation, PersonalNote
 
 
 @Person.method
@@ -91,3 +92,61 @@ def get_personal_notes(self, wanted_week: CalendarWeek):
     return PersonalNote.objects.select_related("person").filter(
         lesson_period=self, week=wanted_week.week
     )
+
+
+@LessonPeriod.method
+def get_lesson_documentation(
+    self, week: Optional[CalendarWeek] = None
+) -> Union[LessonDocumentation, None]:
+    """Get lesson documentation object for this lesson."""
+    if not week:
+        week = self.week
+    try:
+        return LessonDocumentation.objects.get(lesson_period=self, week=week.week)
+    except LessonDocumentation.DoesNotExist:
+        return None
+
+
+@LessonPeriod.method
+def get_or_create_lesson_documentation(
+    self, week: Optional[CalendarWeek] = None
+) -> LessonDocumentation:
+    """Get or create lesson documentation object for this lesson."""
+    if not week:
+        week = self.week
+    lesson_documentation, created = LessonDocumentation.objects.get_or_create(
+        lesson_period=self, week=week.week
+    )
+    return lesson_documentation
+
+
+@LessonPeriod.method
+def get_absences(self, week: Optional[CalendarWeek] = None) -> QuerySet:
+    """Get all personal notes of absent persons for this lesson."""
+    if not week:
+        week = self.week
+    return self.personal_notes.filter(week=week.week, absent=True)
+
+
+@LessonPeriod.method
+def get_excused_absences(self, week: Optional[CalendarWeek] = None) -> QuerySet:
+    """Get all personal notes of excused absent persons for this lesson."""
+    if not week:
+        week = self.week
+    return self.personal_notes.filter(week=week.week, absent=True, excused=True)
+
+
+@LessonPeriod.method
+def get_unexcused_absences(self, week: Optional[CalendarWeek] = None) -> QuerySet:
+    """Get all personal notes of unexcused absent persons for this lesson."""
+    if not week:
+        week = self.week
+    return self.personal_notes.filter(week=week.week, absent=True, excused=False)
+
+
+@LessonPeriod.method
+def get_tardinesses(self, week: Optional[CalendarWeek] = None) -> QuerySet:
+    """Get all personal notes of late persons for this lesson."""
+    if not week:
+        week = self.week
+    return self.personal_notes.filter(week=week.week, late__gt=0)
diff --git a/aleksis/apps/alsijil/templates/alsijil/class_register/lesson.html b/aleksis/apps/alsijil/templates/alsijil/class_register/lesson.html
index b9e72783fd5e6f64b5c4da0e384b0760ff0740df..5748e84a69f478a8a26d0a51cb54cdc8d981a992 100644
--- a/aleksis/apps/alsijil/templates/alsijil/class_register/lesson.html
+++ b/aleksis/apps/alsijil/templates/alsijil/class_register/lesson.html
@@ -1,5 +1,6 @@
 {# -*- engine:django -*- #}
 {% extends "core/base.html" %}
+{% load week_helpers %}
 {% load material_form i18n static %}
 
 {% block browser_title %}{% blocktrans %}Lesson{% endblocktrans %}{% endblock %}
@@ -58,6 +59,53 @@
 
     <div class="row">
       <div class="col s12 m12 l6 xl8">
+        {% with prev_lesson=lesson_period.prev prev_doc=prev_lesson.get_lesson_documentation %}
+          {% with prev_doc=prev_lesson.get_lesson_documentation absences=prev_lesson.get_absences tardinesses=prev_lesson.get_tardinesses %}
+            {% if prev_doc %}
+              {% weekday_to_date prev_lesson.week prev_lesson.period.weekday as prev_date %}
+
+              <div class="card">
+                <div class="card-content">
+                  <span class="card-title">
+                    {% blocktrans %}Overview: Previous lesson{% endblocktrans %} ({{ prev_date }},
+                    {% blocktrans with period=prev_lesson.period.period %}{{ period }}. period{% endblocktrans %})
+                  </span>
+
+                  <table>
+                    {% if prev_doc.topic %}
+                      <tr>
+                        <th class="collection-item">{% trans "Lesson topic of previous lesson:" %}</th>
+                        <td>{{ prev_doc.topic }}</td>
+                      </tr>
+                    {% endif %}
+
+                    {% if prev_doc.homework %}
+                      <tr>
+                        <th class="collection-item">{% trans "Homework for this lesson:" %}</th>
+                        <td>{{ prev_doc.homework }}</td>
+                      </tr>
+                    {% endif %}
+
+                    {% if absences %}
+                      <tr>
+                        <th>{% trans "Absent persons:" %}</th>
+                        <td>{% include "alsijil/partials/absences.html" with notes=absences %}</td>
+                      </tr>
+                    {% endif %}
+
+                    {% if tardinesses %}
+                      <tr>
+                        <th>{% trans "Late persons:" %}</th>
+                        <td>{% include "alsijil/partials/tardinesses.html" with notes=tardinesses %}</td>
+                      </tr>
+                    {% endif %}
+                  </table>
+                </div>
+              </div>
+            {% endif %}
+          {% endwith %}
+        {% endwith %}
+
         <div class="card">
           <div class="card-content">
           <span class="card-title">
diff --git a/aleksis/apps/alsijil/templates/alsijil/partials/absences.html b/aleksis/apps/alsijil/templates/alsijil/partials/absences.html
new file mode 100644
index 0000000000000000000000000000000000000000..6584142bf36e2828471bbb73367442c80f572aee
--- /dev/null
+++ b/aleksis/apps/alsijil/templates/alsijil/partials/absences.html
@@ -0,0 +1,6 @@
+{% load i18n %}
+{% for note in notes %}
+  <span class="{% if note.excused %}green-text{% else %}red-text{% endif %}">{{ note.person }}
+    {% if note.excused %}{% trans "(e)" %}{% else %}{% trans "(u)" %}{% endif %}{% if not forloop.last %},{% endif %}
+  </span>
+{% endfor %}
diff --git a/aleksis/apps/alsijil/templates/alsijil/partials/tardinesses.html b/aleksis/apps/alsijil/templates/alsijil/partials/tardinesses.html
new file mode 100644
index 0000000000000000000000000000000000000000..b3639ea88b779bd746ab551f0a9f2e5d938fd786
--- /dev/null
+++ b/aleksis/apps/alsijil/templates/alsijil/partials/tardinesses.html
@@ -0,0 +1,3 @@
+{% for note in notes %}
+  <span>{{ note.person }} ({{ note.late }}'){% if not forloop.last %},{% endif %}</span>
+{% endfor %}
diff --git a/aleksis/apps/alsijil/views.py b/aleksis/apps/alsijil/views.py
index 776037bd07a1e5446dbd8940e2d3087469115bf8..7779ca4e1082da7fbdfeefd07aa2bc05cb5c0297 100644
--- a/aleksis/apps/alsijil/views.py
+++ b/aleksis/apps/alsijil/views.py
@@ -81,9 +81,7 @@ def lesson(
     context["day"] = wanted_week[lesson_period.period.weekday - 1]
 
     # Create or get lesson documentation object; can be empty when first opening lesson
-    lesson_documentation, created = LessonDocumentation.objects.get_or_create(
-        lesson_period=lesson_period, week=wanted_week.week
-    )
+    lesson_documentation = lesson_period.get_or_create_lesson_documentation(wanted_week)
     lesson_documentation_form = LessonDocumentationForm(
         request.POST or None,
         instance=lesson_documentation,