diff --git a/layouts/zettels/list.html b/layouts/zettels/list.html
new file mode 100644
index 0000000..4cc600d
--- /dev/null
+++ b/layouts/zettels/list.html
@@ -0,0 +1,44 @@
+{{- define "title" }}{{ T "archive" }} - {{ .Site.Title }}{{ end -}}
+
+{{- define "item" -}}
+
+ {{ .Title | title }}
+ {{ with .Keywords }}{{ . }}{{ end }}
+ {{ with .Description }}{{ . }}
{{ end }}
+
+{{- end }}
+
+{{- define "content" }}
+{{- range .Pages.GroupByParam "category" }}
+
+ {{ .Key | title }}:
+
+ {{- range (where .Pages "Params.subcategory" "eq" nil).ByTitle }}
+ {{ template "item" . }}
+ {{- end }}
+ {{- range .Pages.GroupByParam "subcategory" }}
+ -
+ {{ .Key | title }}:
+
+ {{- range .Pages.ByTitle }}
+ {{ template "item" . }}
+ {{- end }}
+
+
+ {{- end }}
+
+
+{{- end }}
+
+{{- $uncat := where .Pages "Params.category" "eq" nil }}
+{{- if $uncat }}
+
+ Other:
+
+ {{- range $uncat.ByTitle }}
+ {{ template "item" . }}
+ {{- end }}
+
+
+{{- end }}
+{{- end }}