diff --git a/core/installer/app.go b/core/installer/app.go
index 9e3cb29..ccdbe97 100644
--- a/core/installer/app.go
+++ b/core/installer/app.go
@@ -7,6 +7,19 @@
 	Templates []*template.Template
 }
 
+func CreateAllApps(tmpls *template.Template) []App {
+	return []App{
+		CreateAppIngressPrivate(tmpls),
+		CreateAppCoreAuth(tmpls),
+		CreateAppVaultwarden(tmpls),
+		CreateAppMatrix(tmpls),
+		CreateAppPihole(tmpls),
+		CreateAppMaddy(tmpls),
+		CreateAppQBittorrent(tmpls),
+		CreateAppJellyfin(tmpls),
+	}
+}
+
 func CreateAppIngressPrivate(tmpls *template.Template) App {
 	return App{
 		"ingress-private",
@@ -64,3 +77,21 @@
 		},
 	}
 }
+
+func CreateAppQBittorrent(tmpls *template.Template) App {
+	return App{
+		"qbittorrent",
+		[]*template.Template{
+			tmpls.Lookup("qbittorrent.yaml"),
+		},
+	}
+}
+
+func CreateAppJellyfin(tmpls *template.Template) App {
+	return App{
+		"jellyfin",
+		[]*template.Template{
+			tmpls.Lookup("jellyfin.yaml"),
+		},
+	}
+}
