diff --git a/devtools/hackdoc/markdown.go b/devtools/hackdoc/markdown.go
index 14ffe45..eaed905 100644
--- a/devtools/hackdoc/markdown.go
+++ b/devtools/hackdoc/markdown.go
@@ -50,6 +50,29 @@
 	Path  string
 }
 
+func (r *request) renderable(dirpath string) bool {
+	cfg, err := config.ForPath(r.ctx, r.source, dirpath)
+	if err != nil {
+		glog.Errorf("could not get config for path %q: %v", dirpath, err)
+		return false
+	}
+
+	for _, f := range cfg.DefaultIndex {
+		fpath := dirpath + "/" + f
+		file, err := r.source.IsFile(r.ctx, fpath)
+		if err != nil {
+			glog.Errorf("IsFile(%q): %v", fpath, err)
+			return false
+		}
+
+		if file {
+			return true
+		}
+	}
+
+	return false
+}
+
 func (r *request) handleFile(path string, cfg *config.Config) {
 	data, err := r.source.ReadFile(r.ctx, path)
 	if err != nil {
@@ -85,7 +108,11 @@
 				label = label + "/"
 			}
 			fullPath += "/" + p
-			pathParts = append(pathParts, pathPart{Label: label, Path: fullPath})
+			target := fullPath
+			if i != len(parts)-1 && !r.renderable("/"+fullPath) {
+				target = ""
+			}
+			pathParts = append(pathParts, pathPart{Label: label, Path: target})
 		}
 
 		vars := map[string]interface{}{
diff --git a/devtools/hackdoc/tpl/default.html b/devtools/hackdoc/tpl/default.html
index edb4c33..e6280db 100644
--- a/devtools/hackdoc/tpl/default.html
+++ b/devtools/hackdoc/tpl/default.html
@@ -72,6 +72,7 @@
     font-family: Consolas, monospace;
     margin-top: 1rem;
     padding: 0.5em 0 0.5em 0;
+    display: inline-flex;
 }
 
 .header a {
@@ -231,7 +232,13 @@
         <div class="page">
             <div class="header">
                 <span class="red">hackdoc:</span>
-                {{ range .PathParts }}<span class="part"><a href="{{ .Path }}">{{ .Label }}</a></span>{{ end }}
+                {{ range .PathParts }}
+                    {{ if ne .Path "" }}
+                        <span class="part"><a href="{{ .Path }}">{{ .Label }}</a></span>
+                    {{ else }}
+                        <span class="part">{{ .Label }}</span>
+                    {{ end }}
+                {{ end }}
                 <span class="red" style="margin-left: 1em;">shortcuts:</span> <a href="/">root</a>, <a href="/cluster/doc">cluster docs</a>, <a href="/doc/codelabs">codelabs</a>
             </div>
             {{ .Rendered }}
