diff --git a/core/src/main/java/se/su/dsv/scipro/forum/BasicForumService.java b/core/src/main/java/se/su/dsv/scipro/forum/BasicForumService.java
index b1001c6a3b..ee581f015f 100644
--- a/core/src/main/java/se/su/dsv/scipro/forum/BasicForumService.java
+++ b/core/src/main/java/se/su/dsv/scipro/forum/BasicForumService.java
@@ -5,10 +5,10 @@ import se.su.dsv.scipro.forum.dataobjects.ForumThread;
 import se.su.dsv.scipro.system.User;
 
 import java.io.Serializable;
-import java.util.*;
+import java.util.List;
+import java.util.Set;
 
 public interface BasicForumService extends Serializable {
-
     ForumPost createReply(ForumThread forumThread, User poster, String content, Set<Attachment> attachments);
 
     boolean setRead(User user, ForumPost post, boolean read);
diff --git a/core/src/main/java/se/su/dsv/scipro/forum/ForumPostRepository.java b/core/src/main/java/se/su/dsv/scipro/forum/ForumPostRepository.java
index 8e965c015b..e5d975add4 100644
--- a/core/src/main/java/se/su/dsv/scipro/forum/ForumPostRepository.java
+++ b/core/src/main/java/se/su/dsv/scipro/forum/ForumPostRepository.java
@@ -1,20 +1,18 @@
 package se.su.dsv.scipro.forum;
 
 import jakarta.transaction.Transactional;
-import se.su.dsv.scipro.system.JpaRepository;
-import se.su.dsv.scipro.system.QueryDslPredicateExecutor;
+import java.util.List;
 import se.su.dsv.scipro.forum.dataobjects.ForumPost;
 import se.su.dsv.scipro.forum.dataobjects.ForumThread;
 import se.su.dsv.scipro.forum.dataobjects.ProjectThread;
 import se.su.dsv.scipro.project.Project;
+import se.su.dsv.scipro.system.JpaRepository;
+import se.su.dsv.scipro.system.QueryDslPredicateExecutor;
 import se.su.dsv.scipro.system.User;
 import se.su.dsv.scipro.util.Pair;
 
-import java.util.List;
-
 @Transactional
 public interface ForumPostRepository extends JpaRepository<ForumPost, Long>, QueryDslPredicateExecutor<ForumPost> {
-
     List<ForumPost> findByThread(ForumThread forumThread);
 
     List<Pair<ProjectThread, ForumPost>> latestPost(Project project, int amount);
diff --git a/core/src/main/java/se/su/dsv/scipro/forum/ForumPostRepositoryImpl.java b/core/src/main/java/se/su/dsv/scipro/forum/ForumPostRepositoryImpl.java
index 8fcaa9ef17..f43a0147bb 100644
--- a/core/src/main/java/se/su/dsv/scipro/forum/ForumPostRepositoryImpl.java
+++ b/core/src/main/java/se/su/dsv/scipro/forum/ForumPostRepositoryImpl.java
@@ -1,10 +1,13 @@
 package se.su.dsv.scipro.forum;
 
+import static com.querydsl.core.types.dsl.Expressions.allOf;
+
 import com.querydsl.jpa.JPAExpressions;
 import com.querydsl.jpa.impl.JPAQuery;
 import jakarta.inject.Inject;
 import jakarta.inject.Provider;
 import jakarta.persistence.EntityManager;
+import java.util.List;
 import se.su.dsv.scipro.forum.dataobjects.ForumPost;
 import se.su.dsv.scipro.forum.dataobjects.ForumThread;
 import se.su.dsv.scipro.forum.dataobjects.ProjectThread;
@@ -17,11 +20,8 @@ import se.su.dsv.scipro.system.GenericRepo;
 import se.su.dsv.scipro.system.User;
 import se.su.dsv.scipro.util.Pair;
 
-import java.util.List;
-
-import static com.querydsl.core.types.dsl.Expressions.allOf;
-
 public class ForumPostRepositoryImpl extends GenericRepo<ForumPost, Long> implements ForumPostRepository {
+
     @Inject
     public ForumPostRepositoryImpl(Provider<EntityManager> em) {
         super(em, ForumPost.class, QForumPost.forumPost);
@@ -35,33 +35,36 @@ public class ForumPostRepositoryImpl extends GenericRepo<ForumPost, Long> implem
     @Override
     public List<Pair<ProjectThread, ForumPost>> latestPost(Project project, int amount) {
         return new JPAQuery<>(em())
-                .select(QProjectThread.projectThread, QForumPost.forumPost)
-                .from(QProjectThread.projectThread)
-                .innerJoin(QProjectThread.projectThread.forumThread)
-                .innerJoin(QForumThread.forumThread.posts, QForumPost.forumPost)
-                .where(QProjectThread.projectThread.project.eq(project))
-                .orderBy(QForumPost.forumPost.dateCreated.desc())
-                .limit(amount)
-                .fetch()
-                .stream()
-                .map(tuple -> new Pair<>(
-                        tuple.get(QProjectThread.projectThread),
-                        tuple.get(QForumPost.forumPost)))
-                .toList();
+            .select(QProjectThread.projectThread, QForumPost.forumPost)
+            .from(QProjectThread.projectThread)
+            .innerJoin(QProjectThread.projectThread.forumThread)
+            .innerJoin(QForumThread.forumThread.posts, QForumPost.forumPost)
+            .where(QProjectThread.projectThread.project.eq(project))
+            .orderBy(QForumPost.forumPost.dateCreated.desc())
+            .limit(amount)
+            .fetch()
+            .stream()
+            .map(tuple -> new Pair<>(tuple.get(QProjectThread.projectThread), tuple.get(QForumPost.forumPost)))
+            .toList();
     }
 
     @Override
     public long countUnreadThreads(List<ForumThread> forumThreadList, User user) {
         return new JPAQuery<>(em())
-                .select(QForumThread.forumThread.id.countDistinct())
-                .from(QForumThread.forumThread)
-                .leftJoin(QForumThread.forumThread.posts, QForumPost.forumPost)
-                .where(QForumPost.forumPost.notIn(
-                        JPAExpressions.select(QForumPostReadState.forumPostReadState.id.post)
-                                .from(QForumPostReadState.forumPostReadState)
-                                .where(QForumPostReadState.forumPostReadState.read.isTrue(),
-                                        QForumPostReadState.forumPostReadState.id.user.eq(user))
-                        ), QForumThread.forumThread.in(forumThreadList)
-                ).fetchOne();
+            .select(QForumThread.forumThread.id.countDistinct())
+            .from(QForumThread.forumThread)
+            .leftJoin(QForumThread.forumThread.posts, QForumPost.forumPost)
+            .where(
+                QForumPost.forumPost.notIn(
+                    JPAExpressions.select(QForumPostReadState.forumPostReadState.id.post)
+                        .from(QForumPostReadState.forumPostReadState)
+                        .where(
+                            QForumPostReadState.forumPostReadState.read.isTrue(),
+                            QForumPostReadState.forumPostReadState.id.user.eq(user)
+                        )
+                ),
+                QForumThread.forumThread.in(forumThreadList)
+            )
+            .fetchOne();
     }
 }
diff --git a/core/src/main/java/se/su/dsv/scipro/forum/ProjectForumServiceImpl.java b/core/src/main/java/se/su/dsv/scipro/forum/ProjectForumServiceImpl.java
index c85552ed79..e2c0d252b4 100644
--- a/core/src/main/java/se/su/dsv/scipro/forum/ProjectForumServiceImpl.java
+++ b/core/src/main/java/se/su/dsv/scipro/forum/ProjectForumServiceImpl.java
@@ -127,9 +127,7 @@ public class ProjectForumServiceImpl implements ProjectForumService {
     @Override
     public long getUnreadThreadsCount(Project project, User user) {
         List<ProjectThread> threads = getThreads(project);
-        List<ForumThread> list = threads.stream()
-                .map(ProjectThread::getForumThread)
-                .toList();
+        List<ForumThread> list = threads.stream().map(ProjectThread::getForumThread).toList();
         return basicForumService.countUnreadThreads(list, user);
     }
 
diff --git a/core/src/main/java/se/su/dsv/scipro/forum/ProjectThreadRepository.java b/core/src/main/java/se/su/dsv/scipro/forum/ProjectThreadRepository.java
index 83720860fe..d0d4f27f60 100644
--- a/core/src/main/java/se/su/dsv/scipro/forum/ProjectThreadRepository.java
+++ b/core/src/main/java/se/su/dsv/scipro/forum/ProjectThreadRepository.java
@@ -1,16 +1,14 @@
 package se.su.dsv.scipro.forum;
 
 import jakarta.transaction.Transactional;
+import java.util.List;
 import se.su.dsv.scipro.forum.dataobjects.ProjectThread;
 import se.su.dsv.scipro.project.Project;
 import se.su.dsv.scipro.system.JpaRepository;
 import se.su.dsv.scipro.system.QueryDslPredicateExecutor;
 
-import java.util.List;
-
 @Transactional
-public interface ProjectThreadRepository extends JpaRepository<ProjectThread, Long>, QueryDslPredicateExecutor<ProjectThread> {
-
+public interface ProjectThreadRepository
+    extends JpaRepository<ProjectThread, Long>, QueryDslPredicateExecutor<ProjectThread> {
     List<ProjectThread> findByProject(Project project);
-
 }
diff --git a/core/src/main/java/se/su/dsv/scipro/forum/ProjectThreadRepositoryImpl.java b/core/src/main/java/se/su/dsv/scipro/forum/ProjectThreadRepositoryImpl.java
index cf5988cfde..f42cbdbe41 100644
--- a/core/src/main/java/se/su/dsv/scipro/forum/ProjectThreadRepositoryImpl.java
+++ b/core/src/main/java/se/su/dsv/scipro/forum/ProjectThreadRepositoryImpl.java
@@ -3,14 +3,14 @@ package se.su.dsv.scipro.forum;
 import jakarta.inject.Inject;
 import jakarta.inject.Provider;
 import jakarta.persistence.EntityManager;
+import java.util.List;
 import se.su.dsv.scipro.forum.dataobjects.ProjectThread;
 import se.su.dsv.scipro.forum.dataobjects.QProjectThread;
 import se.su.dsv.scipro.project.Project;
 import se.su.dsv.scipro.system.GenericRepo;
 
-import java.util.List;
-
 public class ProjectThreadRepositoryImpl extends GenericRepo<ProjectThread, Long> implements ProjectThreadRepository {
+
     @Inject
     public ProjectThreadRepositoryImpl(Provider<EntityManager> em) {
         super(em, ProjectThread.class, QProjectThread.projectThread);
diff --git a/view/src/main/java/se/su/dsv/scipro/forum/panels/AbstractReadStatePanel.java b/view/src/main/java/se/su/dsv/scipro/forum/panels/AbstractReadStatePanel.java
index 223dc04531..54072c9532 100644
--- a/view/src/main/java/se/su/dsv/scipro/forum/panels/AbstractReadStatePanel.java
+++ b/view/src/main/java/se/su/dsv/scipro/forum/panels/AbstractReadStatePanel.java
@@ -1,5 +1,6 @@
 package se.su.dsv.scipro.forum.panels;
 
+import java.util.Optional;
 import org.apache.wicket.Component;
 import org.apache.wicket.ajax.AjaxRequestTarget;
 import org.apache.wicket.ajax.markup.html.AjaxFallbackLink;
@@ -7,8 +8,6 @@ import org.apache.wicket.markup.ComponentTag;
 import org.apache.wicket.markup.html.WebComponent;
 import org.apache.wicket.markup.html.panel.Panel;
 
-import java.util.Optional;
-
 public abstract class AbstractReadStatePanel extends Panel {
 
     public static final String TOGGLE = "toggle";
@@ -16,7 +15,6 @@ public abstract class AbstractReadStatePanel extends Panel {
 
     public AbstractReadStatePanel(final String id) {
         super(id);
-
         Component icon = new UpdatingImage(ICON);
         icon.setOutputMarkupId(true);
 
@@ -35,9 +33,11 @@ public abstract class AbstractReadStatePanel extends Panel {
     }
 
     protected abstract boolean isRead();
+
     protected abstract void onFlagClick(final AjaxRequestTarget target);
 
     private class UpdatingImage extends WebComponent {
+
         public UpdatingImage(String id) {
             super(id);
         }
diff --git a/view/src/main/java/se/su/dsv/scipro/forum/panels/NumberOfMessagesPanel.java b/view/src/main/java/se/su/dsv/scipro/forum/panels/NumberOfMessagesPanel.java
index 115aad83f2..86a9ca96b2 100644
--- a/view/src/main/java/se/su/dsv/scipro/forum/panels/NumberOfMessagesPanel.java
+++ b/view/src/main/java/se/su/dsv/scipro/forum/panels/NumberOfMessagesPanel.java
@@ -11,9 +11,7 @@ public abstract class NumberOfMessagesPanel extends Panel {
 
     public NumberOfMessagesPanel(final String id) {
         super(id);
-
         add(new Label("msgCount", model));
-
     }
 
     @Override
diff --git a/view/src/main/java/se/su/dsv/scipro/supervisor/panels/SupervisorMyProjectsPanel.java b/view/src/main/java/se/su/dsv/scipro/supervisor/panels/SupervisorMyProjectsPanel.java
index 5d9cf5ca90..4de431f9e6 100755
--- a/view/src/main/java/se/su/dsv/scipro/supervisor/panels/SupervisorMyProjectsPanel.java
+++ b/view/src/main/java/se/su/dsv/scipro/supervisor/panels/SupervisorMyProjectsPanel.java
@@ -1,10 +1,14 @@
 package se.su.dsv.scipro.supervisor.panels;
 
+import static java.util.Arrays.asList;
+
 import jakarta.inject.Inject;
+import java.util.ArrayList;
+import java.util.List;
+import org.apache.wicket.AttributeModifier;
 import org.apache.wicket.ajax.AjaxRequestTarget;
 import org.apache.wicket.ajax.form.AjaxFormChoiceComponentUpdatingBehavior;
 import org.apache.wicket.ajax.markup.html.form.AjaxCheckBox;
-import org.apache.wicket.AttributeModifier;
 import org.apache.wicket.extensions.markup.html.repeater.data.grid.ICellPopulator;
 import org.apache.wicket.extensions.markup.html.repeater.data.sort.SortOrder;
 import org.apache.wicket.extensions.markup.html.repeater.data.table.AbstractColumn;
@@ -47,11 +51,6 @@ import se.su.dsv.scipro.system.ProjectType;
 import se.su.dsv.scipro.system.ProjectTypeService;
 import se.su.dsv.scipro.system.User;
 
-import java.util.ArrayList;
-import java.util.List;
-
-import static java.util.Arrays.asList;
-
 public class SupervisorMyProjectsPanel extends Panel {
 
     public static final String FILTER_FORM = "filterForm";
@@ -63,10 +62,13 @@ public class SupervisorMyProjectsPanel extends Panel {
 
     @Inject
     private ProjectTypeService projectTypeService;
+
     @Inject
     private ProjectService projectService;
+
     @Inject
     private UserProfileService profileService;
+
     @Inject
     private ProjectForumService projectForumService;
 
@@ -82,7 +84,10 @@ public class SupervisorMyProjectsPanel extends Panel {
     }
 
     private void dataViewSetup() {
-        SortableDataProvider<Project, String> provider = new FilteredDataProvider<>(projectService, Model.of(this.filter));
+        SortableDataProvider<Project, String> provider = new FilteredDataProvider<>(
+            projectService,
+            Model.of(this.filter)
+        );
         provider.setSort("dateCreated", SortOrder.DESCENDING);
         dataPanel = new ExportableDataPanel<>(DATA_PANEL, createColumns(), provider);
         add(dataPanel);
@@ -95,14 +100,24 @@ public class SupervisorMyProjectsPanel extends Panel {
         columns.add(new TemporalColumn<>(Model.of("Started"), "startDate", Project::getStartDate));
         columns.add(new LambdaColumn<>(Model.of("Type"), "projectType.name", Project::getProjectTypeName));
         columns.add(new ProjectTitleColumn(Model.of("Title"), "title"));
-        columns.add(new MultipleUsersColumn<>(Model.of("Authors")) {
-            @Override
-            public ListAdapterModel<User> getUsers(final IModel<Project> rowModel) {
-                return new ListAdapterModel<>(rowModel.map(Project::getProjectParticipants));
+        columns.add(
+            new MultipleUsersColumn<>(Model.of("Authors")) {
+                @Override
+                public ListAdapterModel<User> getUsers(final IModel<Project> rowModel) {
+                    return new ListAdapterModel<>(rowModel.map(Project::getProjectParticipants));
+                }
             }
-        });
-        columns.add(new ProjectNoteColumn(Model.of("Note"), LoadableDetachableModel.of(this::currentUser), supervisorProjectNoteDisplayModel));
-        columns.add(new UserColumn<>(Model.of("Head supervisor"), "headSupervisor.fullName", Project::getHeadSupervisor));
+        );
+        columns.add(
+            new ProjectNoteColumn(
+                Model.of("Note"),
+                LoadableDetachableModel.of(this::currentUser),
+                supervisorProjectNoteDisplayModel
+            )
+        );
+        columns.add(
+            new UserColumn<>(Model.of("Head supervisor"), "headSupervisor.fullName", Project::getHeadSupervisor)
+        );
         return columns;
     }
 
@@ -139,47 +154,87 @@ public class SupervisorMyProjectsPanel extends Panel {
 
         public FilterForm(String id, IModel<ProjectService.Filter> filterParams) {
             super(id, filterParams);
-
-            add(new AjaxCheckBox(SUPERVISOR, LambdaModel.of(filterParams, ProjectService.Filter::isFilterSupervisor, ProjectService.Filter::setFilterSupervisor)) {
-                @Override
-                protected void onUpdate(AjaxRequestTarget target) {
-                    target.add(dataPanel);
-                    updateProfileWithCurrentFilter();
+            add(
+                new AjaxCheckBox(
+                    SUPERVISOR,
+                    LambdaModel.of(
+                        filterParams,
+                        ProjectService.Filter::isFilterSupervisor,
+                        ProjectService.Filter::setFilterSupervisor
+                    )
+                ) {
+                    @Override
+                    protected void onUpdate(AjaxRequestTarget target) {
+                        target.add(dataPanel);
+                        updateProfileWithCurrentFilter();
+                    }
                 }
-            });
-            add(new AjaxCheckBoxMultipleChoice<>(ROLE_FILTER, LambdaModel.of(filterParams, ProjectService.Filter::getRoles, ProjectService.Filter::setRoles), List.of(ProjectTeamMemberRoles.CO_SUPERVISOR), new EnumChoiceRenderer<>(this)) {
-                @Override
-                public void onUpdate(AjaxRequestTarget target) {
-                    target.add(dataPanel);
-                    updateProfileWithCurrentFilter();
+            );
+            add(
+                new AjaxCheckBoxMultipleChoice<>(
+                    ROLE_FILTER,
+                    LambdaModel.of(filterParams, ProjectService.Filter::getRoles, ProjectService.Filter::setRoles),
+                    List.of(ProjectTeamMemberRoles.CO_SUPERVISOR),
+                    new EnumChoiceRenderer<>(this)
+                ) {
+                    @Override
+                    public void onUpdate(AjaxRequestTarget target) {
+                        target.add(dataPanel);
+                        updateProfileWithCurrentFilter();
+                    }
                 }
-            });
-            add(new AjaxCheckBoxMultipleChoice<>(STATUS_FILTER, LambdaModel.of(filterParams, ProjectService.Filter::getStatuses, ProjectService.Filter::setStatuses), asList(ProjectStatus.values()), new EnumChoiceRenderer<>(this)) {
-                @Override
-                public void onUpdate(AjaxRequestTarget target) {
-                    target.add(dataPanel);
-                    updateProfileWithCurrentFilter();
+            );
+            add(
+                new AjaxCheckBoxMultipleChoice<>(
+                    STATUS_FILTER,
+                    LambdaModel.of(
+                        filterParams,
+                        ProjectService.Filter::getStatuses,
+                        ProjectService.Filter::setStatuses
+                    ),
+                    asList(ProjectStatus.values()),
+                    new EnumChoiceRenderer<>(this)
+                ) {
+                    @Override
+                    public void onUpdate(AjaxRequestTarget target) {
+                        target.add(dataPanel);
+                        updateProfileWithCurrentFilter();
+                    }
                 }
-            });
-            add(new AjaxCheckBoxMultipleChoice<>(TYPE_FILTER, LambdaModel.of(filterParams, ProjectService.Filter::getProjectTypes, ProjectService.Filter::setProjectTypes), projectTypeService.findBySupervisorProjects(SciProSession.get().getUser()), new LambdaChoiceRenderer<>(ProjectType::getName, ProjectType::getId)) {
-                @Override
-                public void onUpdate(AjaxRequestTarget target) {
-                    target.add(dataPanel);
-                    updateProfileWithCurrentFilter();
+            );
+            add(
+                new AjaxCheckBoxMultipleChoice<>(
+                    TYPE_FILTER,
+                    LambdaModel.of(
+                        filterParams,
+                        ProjectService.Filter::getProjectTypes,
+                        ProjectService.Filter::setProjectTypes
+                    ),
+                    projectTypeService.findBySupervisorProjects(SciProSession.get().getUser()),
+                    new LambdaChoiceRenderer<>(ProjectType::getName, ProjectType::getId)
+                ) {
+                    @Override
+                    public void onUpdate(AjaxRequestTarget target) {
+                        target.add(dataPanel);
+                        updateProfileWithCurrentFilter();
+                    }
                 }
-            });
+            );
             BootstrapRadioChoice<SupervisorProjectNoteDisplay> noteDisplay = new BootstrapRadioChoice<>(
-                    "note_display",
-                    supervisorProjectNoteDisplayModel,
-                    List.of(SupervisorProjectNoteDisplay.values()),
-                    new EnumChoiceRenderer<>(this));
-            noteDisplay.add(new AjaxFormChoiceComponentUpdatingBehavior() {
-                @Override
-                public void onUpdate(AjaxRequestTarget target) {
-                    target.add(dataPanel);
-                    updateProfileWithCurrentFilter();
+                "note_display",
+                supervisorProjectNoteDisplayModel,
+                List.of(SupervisorProjectNoteDisplay.values()),
+                new EnumChoiceRenderer<>(this)
+            );
+            noteDisplay.add(
+                new AjaxFormChoiceComponentUpdatingBehavior() {
+                    @Override
+                    public void onUpdate(AjaxRequestTarget target) {
+                        target.add(dataPanel);
+                        updateProfileWithCurrentFilter();
+                    }
                 }
-            });
+            );
             add(noteDisplay);
         }
 
@@ -195,6 +250,7 @@ public class SupervisorMyProjectsPanel extends Panel {
     }
 
     private class ProjectForumStateColumn extends AbstractColumn<Project, String> {
+
         public ProjectForumStateColumn(IModel<String> label) {
             super(label);
         }
@@ -206,8 +262,10 @@ public class SupervisorMyProjectsPanel extends Panel {
 
             Fragment fragment = new Fragment(id, "readStateColumnMarkupId", SupervisorMyProjectsPanel.this);
 
-            long msgCount = projectForumService.getUnreadThreadsCount(projectModel.getObject(),
-                    SciProSession.get().getUser());
+            long msgCount = projectForumService.getUnreadThreadsCount(
+                projectModel.getObject(),
+                SciProSession.get().getUser()
+            );
             boolean isRead = msgCount == 0;
 
             AbstractReadStatePanel readStatePanel = new AbstractReadStatePanel("flag") {
@@ -218,8 +276,10 @@ public class SupervisorMyProjectsPanel extends Panel {
 
                 @Override
                 protected void onFlagClick(AjaxRequestTarget target) {
-                    setResponsePage(SupervisorThreadedForumPage.class,
-                            SupervisorThreadedForumPage.getPageParameters(projectModel.getObject()));
+                    setResponsePage(
+                        SupervisorThreadedForumPage.class,
+                        SupervisorThreadedForumPage.getPageParameters(projectModel.getObject())
+                    );
                 }
             };
 
@@ -229,12 +289,14 @@ public class SupervisorMyProjectsPanel extends Panel {
 
             fragment.add(readStatePanel);
 
-            fragment.add(new NumberOfMessagesPanel("counter") {
-                @Override
-                public long getMessageCount() {
-                    return msgCount;
+            fragment.add(
+                new NumberOfMessagesPanel("counter") {
+                    @Override
+                    public long getMessageCount() {
+                        return msgCount;
+                    }
                 }
-            });
+            );
 
             item.add(fragment);
         }