diff --git a/CHANGELOG.rst b/CHANGELOG.rst
index 93b3b54ad01f0e6960f0da541cb15cb75358c63a..9fa90256b307f51641b19dbd67ae8ebd20c67094 100644
--- a/CHANGELOG.rst
+++ b/CHANGELOG.rst
@@ -7,6 +7,14 @@ The format is based on `Keep a Changelog`_,
 and this project adheres to `Semantic Versioning`_.
 
 
+Unreleased
+----------
+
+Fixed
+~~~~~
+
+* The Matrix groups and rooms threw a 404 error.
+
 `2.0b0` - 2023-02-23
 --------------------
 
diff --git a/aleksis/apps/matrix/menus.py b/aleksis/apps/matrix/menus.py
deleted file mode 100644
index 45811de6e438b10d592973a5ff6d3db471ee64a1..0000000000000000000000000000000000000000
--- a/aleksis/apps/matrix/menus.py
+++ /dev/null
@@ -1,31 +0,0 @@
-from django.utils.translation import gettext_lazy as _
-
-MENUS = {
-    "NAV_MENU_CORE": [
-        {
-            "name": _("Matrix"),
-            "url": "#",
-            "svg_icon": "simple-icons:matrix",
-            "root": True,
-            "validators": [
-                (
-                    "aleksis.core.util.predicates.permission_validator",
-                    "matrix.show_menu_rule",
-                ),
-            ],
-            "submenu": [
-                {
-                    "name": _("Groups and Rooms"),
-                    "url": "matrix_rooms",
-                    "svg_icon": "mdi:account-group-outline",
-                    "validators": [
-                        (
-                            "aleksis.core.util.predicates.permission_validator",
-                            "matrix.view_matrixrooms_rule",
-                        ),
-                    ],
-                },
-            ],
-        }
-    ]
-}
diff --git a/aleksis/apps/matrix/urls.py b/aleksis/apps/matrix/urls.py
new file mode 100644
index 0000000000000000000000000000000000000000..e3619969d993c03eec24aaa94f3ed71d2ec4f938
--- /dev/null
+++ b/aleksis/apps/matrix/urls.py
@@ -0,0 +1,7 @@
+from django.urls import path
+
+from . import views
+
+urlpatterns = [
+    path("rooms/", views.MatrixRoomListView.as_view(), name="matrix_rooms"),
+]