diff --git a/app/assets/javascripts/admin/addon/controllers/admin-config-logo-settings.js b/app/assets/javascripts/admin/addon/controllers/admin-config-logo-settings.js
new file mode 100644
index 00000000000..b3ac39ad4a7
--- /dev/null
+++ b/app/assets/javascripts/admin/addon/controllers/admin-config-logo-settings.js
@@ -0,0 +1,3 @@
+import AdminAreaSettingsBaseController from "admin/controllers/admin-area-settings-base";
+
+export default class AdminConfigLogoSettingsController extends AdminAreaSettingsBaseController {}
diff --git a/app/assets/javascripts/admin/addon/routes/admin-config-logo.js b/app/assets/javascripts/admin/addon/routes/admin-config-logo.js
new file mode 100644
index 00000000000..2c8548a5f4e
--- /dev/null
+++ b/app/assets/javascripts/admin/addon/routes/admin-config-logo.js
@@ -0,0 +1,8 @@
+import DiscourseRoute from "discourse/routes/discourse";
+import { i18n } from "discourse-i18n";
+
+export default class AdminConfigLogoRoute extends DiscourseRoute {
+ titleToken() {
+ return i18n("admin.appearance.sidebar_link.site_logo");
+ }
+}
diff --git a/app/assets/javascripts/admin/addon/routes/admin-route-map.js b/app/assets/javascripts/admin/addon/routes/admin-route-map.js
index e9136b0f770..c10775f5fca 100644
--- a/app/assets/javascripts/admin/addon/routes/admin-route-map.js
+++ b/app/assets/javascripts/admin/addon/routes/admin-route-map.js
@@ -265,6 +265,9 @@ export default function () {
this.route("fonts", function () {
this.route("settings", { path: "/" });
});
+ this.route("logo", function () {
+ this.route("settings", { path: "/" });
+ });
}
);
diff --git a/app/assets/javascripts/admin/addon/templates/config-logo-settings.hbs b/app/assets/javascripts/admin/addon/templates/config-logo-settings.hbs
new file mode 100644
index 00000000000..ebe1a00209e
--- /dev/null
+++ b/app/assets/javascripts/admin/addon/templates/config-logo-settings.hbs
@@ -0,0 +1,21 @@
+