diff --git a/core/installer/app_configs/app_global_env.cue b/core/installer/app_configs/app_global_env.cue
index 32cc63d..3841f02 100644
--- a/core/installer/app_configs/app_global_env.cue
+++ b/core/installer/app_configs/app_global_env.cue
@@ -43,6 +43,8 @@
 	auth: #Auth
 	network: #Network
 	subdomain: string
+	home: string | *""
+	label: string | *name
 	appRoot: string | *""
 	service: close({
 		name: string
@@ -131,6 +133,7 @@
 					// TODO(gio): Change type to cluster-gateway or sth similar.
 					"dodo.cloud/resource-type": "ingress"
 					"dodo.cloud/resource.ingress.host": "https://\(_clusterDomain)"
+					"dodo.cloud/internal": "true"
 				}
 				values: {
 					domain: _clusterDomain
@@ -162,6 +165,8 @@
 				annotations: {
 					"dodo.cloud/resource-type": "ingress"
 					"dodo.cloud/resource.ingress.host": "https://\(_domain)"
+					"dodo.cloud/resource.ingress.home": home
+					"dodo.cloud/resource.ingress.name": label
 				}
 				values: {
 					domain: _domain
@@ -192,6 +197,8 @@
 				annotations: {
 					"dodo.cloud/resource-type": "ingress"
 					"dodo.cloud/resource.ingress.host": "https://\(_domain)"
+					"dodo.cloud/resource.ingress.home": home
+					"dodo.cloud/resource.ingress.name": label
 				}
 				values: {
 					domain: _domain
diff --git a/core/installer/app_configs/dodo_app.cue b/core/installer/app_configs/dodo_app.cue
index ceb72c9..7e2b7bc 100644
--- a/core/installer/app_configs/dodo_app.cue
+++ b/core/installer/app_configs/dodo_app.cue
@@ -270,6 +270,7 @@
 		out: {
 			ingress: {
 				app: {
+					label: "App"
 					network: networks[strings.ToLower(_app.ingress.network)]
 					subdomain: _app.ingress.subdomain
 					auth: _app.ingress.auth
@@ -371,6 +372,7 @@
 		out: {
 			ingress: {
 				app: {
+					label: "App"
 					network: networks[strings.ToLower(_app.ingress.network)]
 					subdomain: _app.ingress.subdomain
 					auth: _app.ingress.auth
@@ -380,6 +382,8 @@
 					}
 				}
 				code: {
+					label: "VS Code"
+					home: "/?folder=/home/\(_app.dev.username)/code"
 					network: networks[strings.ToLower(_app.ingress.network)]
 					subdomain: "code-\(_app.ingress.subdomain)"
 					auth: enabled: false
diff --git a/core/installer/server/dodo-app/server.go b/core/installer/server/dodo-app/server.go
index f921a09..858afa8 100644
--- a/core/installer/server/dodo-app/server.go
+++ b/core/installer/server/dodo-app/server.go
@@ -12,6 +12,7 @@
 	"io/fs"
 	"net/http"
 	"slices"
+	"sort"
 	"strconv"
 	"strings"
 	"sync"
@@ -594,7 +595,9 @@
 }
 
 type ingress struct {
+	Name string
 	Host string
+	Home string
 }
 
 type vm struct {
@@ -1747,6 +1750,10 @@
 		if !ok {
 			continue
 		}
+		internal, ok := r.Annotations["dodo.cloud/internal"]
+		if ok && strings.ToLower(internal) == "true" {
+			continue
+		}
 		switch t {
 		case "volume":
 			name, ok := r.Annotations["dodo.cloud/resource.volume.name"]
@@ -1773,11 +1780,19 @@
 			}
 			ret.PostgreSQL = append(ret.PostgreSQL, postgresql{name, version, volume})
 		case "ingress":
+			name, ok := r.Annotations["dodo.cloud/resource.ingress.name"]
+			if !ok {
+				return resourceData{}, fmt.Errorf("no name")
+			}
+			home, ok := r.Annotations["dodo.cloud/resource.ingress.home"]
+			if !ok {
+				home = ""
+			}
 			host, ok := r.Annotations["dodo.cloud/resource.ingress.host"]
 			if !ok {
 				return resourceData{}, fmt.Errorf("no host")
 			}
-			ret.Ingress = append(ret.Ingress, ingress{host})
+			ret.Ingress = append(ret.Ingress, ingress{name, host, home})
 		case "virtual-machine":
 			name, ok := r.Annotations["dodo.cloud/resource.virtual-machine.name"]
 			if !ok {
@@ -1804,6 +1819,9 @@
 			fmt.Printf("Unknown resource: %+v\n", r.Annotations)
 		}
 	}
+	sort.Slice(ret.Ingress, func(i, j int) bool {
+		return strings.Compare(ret.Ingress[i].Name, ret.Ingress[j].Name) < 0
+	})
 	return ret, nil
 }
 
diff --git a/core/installer/server/dodo-app/templates/base.html b/core/installer/server/dodo-app/templates/base.html
index 9129c4d..eb3a9c3 100644
--- a/core/installer/server/dodo-app/templates/base.html
+++ b/core/installer/server/dodo-app/templates/base.html
@@ -24,8 +24,7 @@
 {{- if gt (len .Ingress) 0 -}}
 <h3>Ingress</h3>
 {{- range $i := .Ingress -}}
-Host: <a href="{{ $i.Host }}">{{ $i.Host }}</a><br/>
-<br/>
+{{ $i.Name }}: <a href="{{ $i.Host }}{{ $i.Home }}" target="_blank">{{ $i.Host }}</a><br/>
 {{- end -}}
 {{- end -}}
 {{- if gt (len .VirtualMachine) 0 -}}
diff --git a/core/installer/values-tmpl/dodo-app.cue b/core/installer/values-tmpl/dodo-app.cue
index 1c5939b..fe7e504 100644
--- a/core/installer/values-tmpl/dodo-app.cue
+++ b/core/installer/values-tmpl/dodo-app.cue
@@ -106,8 +106,8 @@
 				if !input.external {
 					enabled: true
 					noAuthPathPatterns: [
-						"^/static/.*$",
-						"^/schemas/.*$",
+						"^/static\/.*$",
+						"^/schemas\/.*$",
 						"^/api/public-data$",
 				    ]
 				}
