diff --git a/muppet/__main__.py b/muppet/__main__.py
index 21593dd2f512ae09ecbafcdc5ca821255755af10..b35d5f088fb1fe24bb8c46365fd505b24be67643 100644
--- a/muppet/__main__.py
+++ b/muppet/__main__.py
@@ -324,14 +324,16 @@ def setup_module(base: str, module: ModuleEntry) -> None:
         # puppet_class['docstring']
         # puppet_class['defaults']
 
-        with open(os.path.join(dir, 'source.pp'), 'w') as f:
+        # TODO option to add .txt extension (for web serverse which
+        # treat .pp as application/binary)
+        with open(os.path.join(dir, 'source.pp.txt'), 'w') as f:
             f.write(puppet_class['source'])
 
         with open(os.path.join(dir, 'source.json'), 'w') as f:
             json.dump(puppet_class, f, indent=2)
 
-        with open(os.path.join(dir, 'source.pp.html'), 'w') as f:
-            f.write(format_class(puppet_class))
+        # with open(os.path.join(dir, 'source.pp.html'), 'w') as f:
+        #     f.write(format_class(puppet_class))
 
         with open(os.path.join(dir, 'index.html'), 'w') as f:
             template = jinja.get_template('code_page.html')
diff --git a/templates/code_page.html b/templates/code_page.html
index 1bf0fc179c54d057d67c76b83fe0835bcab8111f..2840bfc25f5bac46eeefd8eb18c522ba91832615 100644
--- a/templates/code_page.html
+++ b/templates/code_page.html
@@ -1,5 +1,9 @@
 {% extends "base.html" %}
 {% block content %}
+	<ul>
+		<li><a href="source.pp.txt">Raw Source code</a></li>
+		<li><a href="source.json">JSON blob</a></li>
+	</ul>
 {{ content }}
 {% endblock %}
 {# ft: jinja #}