+{% set metadata = get_file_metadata('foo.cont') %}
+{% for k in metadata.keys() %}
+
{{k}}
{{metadata[k]}}
+{% endfor %}
+
diff --git a/demo/mapping.json b/demo/mapping.json
new file mode 100755
index 0000000..e69de29
diff --git a/demo/passthrough.md b/demo/passthrough.md
new file mode 100644
index 0000000..373643d
--- /dev/null
+++ b/demo/passthrough.md
@@ -0,0 +1,9 @@
+# README #
+
+This is a test of the emergency compiled HTML system. This is only a *test*.
+
+[Foo!](foo.html)
+
+{% for i in range(100) %}
+* {{ i }}
+{% endfor %}
diff --git a/demo/passthrough.md.meta b/demo/passthrough.md.meta
new file mode 100644
index 0000000..d35f55b
--- /dev/null
+++ b/demo/passthrough.md.meta
@@ -0,0 +1,3 @@
+{
+"pragma":["no-proc"]
+}
diff --git a/demo/readme.md b/demo/readme.md
new file mode 100644
index 0000000..373643d
--- /dev/null
+++ b/demo/readme.md
@@ -0,0 +1,9 @@
+# README #
+
+This is a test of the emergency compiled HTML system. This is only a *test*.
+
+[Foo!](foo.html)
+
+{% for i in range(100) %}
+* {{ i }}
+{% endfor %}
diff --git a/demo/readme.md.meta b/demo/readme.md.meta
new file mode 100644
index 0000000..a266664
--- /dev/null
+++ b/demo/readme.md.meta
@@ -0,0 +1,3 @@
+{
+"title":"Yo, markdown"
+}
\ No newline at end of file
diff --git a/demo/templates/debug.jinja2 b/demo/templates/debug.jinja2
new file mode 100755
index 0000000..bcc22fb
--- /dev/null
+++ b/demo/templates/debug.jinja2
@@ -0,0 +1,32 @@
+
+
+Debug for {{path}}
+
+
+
+
{{path}}
+
Content
+
+{{content}}
+
+
+
Environment
+
+
key
value
+{% for k in environ.keys() %}
+
{{k}}
{{environ[k]}}
+{% endfor %}
+
+
+
Metadata
+
+
key
value
+{% for k in metadata.keys() %}
+
{{k}}
{{metadata[k]}}
+{% endfor %}
+
+
diff --git a/demo/templates/default-fs.jinja2 b/demo/templates/default-fs.jinja2
new file mode 100755
index 0000000..09b2c85
--- /dev/null
+++ b/demo/templates/default-fs.jinja2
@@ -0,0 +1,6 @@
+